読者です 読者をやめる 読者になる 読者になる

はわわーっ

はわわわわっ

haskell で素数リスト

こんなかんじにやればいいらしい。

primes = 2 : primes'
  where
    primes' = 3 : sieve 0 5
    sieve i x = filter isPrime [x,x+2..p*p-2] ++ sieve (i+1) (p*p+2)
      where
        (ps, p:_) = splitAt i primes'
        isPrime x = all ((/= 0) . mod x) ps

素数むずい。

参考:
2009-11-15 - Life Goes On
Haskell で素数: ツムジのひとりごと