2012年5月5日土曜日

Project Euler-Problem7をgroovyで解いてみる

問題

素数を小さい方から6つ並べると 2, 3, 5, 7, 11, 13 であり、6番目の素数は 13 である。

10001 番目の素数を求めよ。

問題を解いたプログラム

なんのひねりもないコードですが・・・
def primes = []
def num = 2;
while (primes.size() < 10001) {
  if (!primes.find {num % it == 0}) {
      primes << num
  }
  num++
}
println primes.last()