2010-02-19から1日間の記事一覧

Project Euler 52,53

Problem 52 http://projecteuler.net/index.php?section=problems&id=52 6倍しても桁が上がらないことを利用する。 import Data.List digits 0 = [] digits n = (digits (div n 10)) ++ [mod n 10] normalize = sort . digits is_valid n = f n 2 where m = …

Project Euler 88

Problem 88 自然数Nが少なくとも2つの自然数の集合{a1, a2, ... , ak}の和と積で書けるとき、これを積和数と呼ぶ:N = a1 + a2 + ... + ak = a1 × a2 × ... × ak。 例えば、6 = 1 + 2 + 3 = 1 × 2 × 3。 与えられた大きさkとの集合に対して、この性質を持つ…