hairetu[num]++

すみません、これはどういうことでしょうか?

また、
hairetu[2] | =

これもどういう風に足しているのでしょうか? =


1たすとは配列の要素番号を1たすということでしょうか?

下の方は、配列2の要素の値のビット数+ 右辺にあるビット数を足したものを
配列2に格納するというこでしょうか?


基本的に& や | があったら、ビットの演算子であるとおもえばよろしいのでしょうか?