Julia - Juliaでビットカウント

環境

julia> versioninfo()
Julia Version 0.6.1
Commit 0d7248e* (2017-10-24 22:15 UTC)
Platform Info:
  OS: Linux (x86_64-pc-linux-gnu)
  CPU: Intel(R) Core(TM) i5-4460T CPU @ 1.90GHz
  WORD_SIZE: 64
  BLAS: libopenblas (HASWELL)
  LAPACK: libopenblas
  LIBM: libm
  LLVM: libLLVM-3.9.1 (ORCJIT, haswell)

ビットカウント

Juliaでビットカウント*1をする場合、count_onesを使う。

julia> bin(100)
"1100100"

julia> count_ones(100)
3

0 の個数が知りたい場合はcount_zerosを使う。

julia> count_zeros(100)
61

*1:数字を2進数展開したときに含まれる1の個数を数える