2010-03-05から1日間の記事一覧

Project Euler 72

http://projecteuler.net/index.php?section=problems&id=72 エラトステネスのふるいがなぜこんなに遅いのか。 import Data.Array make_primes n = filter (a!) [2..n] where a = sieve (array (2, n) [ (k, True) | k <- [2..n] ]) 2 sieve a p | a!p = sie…

Project Euler 1(2)

Pythonでisum,ifilter,irangeを自作して、 def isum(a): s = 0 for e in a: s += e return s def ifilter(f, a): for e in a: if f(e): yield e def irange(begin, end): n = begin while n < end: yield n n += 1 print isum(ifilter(lambda n: n % 3 == 0 …

Project Euler 281

プロジェクトオイラー http://projecteuler.net/index.php?section=problems&id=281 まず、f(3,2) = 16が手でなかなか出てこなかった。 雑なコードは割とすぐ書けた。 手がかりはあるのだが、あと1時間できる自信がない。