>116
エラトステネスだろう。ビット演算多用してるので早そうだ
ただ make_prime_tab 中の k <= nh / 3 がよくわからん。