2008-11-12から1日間の記事一覧

longの乱数を指定範囲で得る方法、intと同じでよかった

結局、ちょっと勘違いがあって、nextInt(int)と同じことをやればよかったことがわかりました。 long nextLong(long n){ long bits, value; do{ bits = r.nextLong(); if(bits < 0) bits -= Long.MIN_VALUE; val = bits % n; } while (bits - val + (n - 1); …

プログラマなら、フェルマーテストは一度書いておくべき

gcdは再帰の良い例だし、modPowの反復二乗法ではビット演算を意識する。 そして、フェルマーテスト自体は乱択アルゴリズムのひとつだ。 微分積分は使わない分野では全く必要ないし、使う分野というのも狭い。 けども、整数演算は、プログラムとは切り離せな…

カーマイケル数を求めてみる

やっぱ、どの数がカーマイケル数か気になるので、1千万までのカーマイケル数を求めてみました。全部で105個です。 561 1105 1729 2465 2821 6601 8911 10585 15841 29341 41041 46657 52633 62745 63973 75361 101101 115921 126217 162401 172081 188461 25…