2011-07-21から1日間の記事一覧
昼間、Eulerの問題を解いていて気になったのでちょっとGHCiで調べてみた Prelude> :t foldr foldr :: (a -> b -> b) -> b -> [a] -> b Prelude> foldr (*) 1 [1..0] 1 Prelude> foldr (*) 1 [0..1] 0 Prelude> :t foldl foldl :: (a -> b -> a) -> a -> [b] …
main =getLine >>= \n-> (print $ sum $ map euler53 [1.. read n]) euler53 :: Integer -> Integer euler53 n = euler53' n n euler53' :: Integer -> Integer -> Integer euler53' n 0 = 0 euler53' n r = check53 (combinate n r) + euler53' n (r-1) kai…
最近、なるべくパターンマッチを使わないで書けないものかと模索中。 何がいい書き方なのかよくわからないけれど、関数型言語なのだからなるべく関数に重点を置いて書いてやりたい。 パターンマッチに依存する癖をつけると、Cで書くif文のようなものになって…