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

project euler problem 16

2^15 = 32768 であり、これの各数字の合計は 3 + 2 + 7 + 6 + 8 = 26 となる。同様にして、2^1000 の各数字の合計を求めよ。 簡単そうなのですぐやってしまった。 read [c]+0 がきもちわるいけど… Prelude> foldl (\x y->x+(read [y]+0)) 0 $ show (2^1000) …

project euler problem 11

08 02 22 97 38 15 00 40 00 75 04 05 07 78 52 12 50 77 91 08 49 49 99 40 17 81 18 57 60 87 17 40 98 43 69 48 04 56 62 00 81 49 31 73 55 79 14 29 93 71 40 67 53 88 30 03 49 13 36 65 52 70 95 23 04 60 11 42 69 24 68 56 01 32 56 71 37 02 36 91…

project euler problem 8

以下の1000桁の数字から5つの連続する数字を取り出して その積を計算する。そのような積の中で最大のものの値はいくらか73167176531330624919225119674426574742355349194934 96983520312774506326239578318016984801869478851843 8586156078911294949545950…

haskellで組合せと順列

まさか… そんなまさか… さっき id:nobsun さんに教えてもらった [(i,j)|i<-[1..10],j<-[i+1..10]] が組合せだったなんて… Prelude> mapM_ print $ map (\x->[(i,j)|i<-[1..x],j<-[i+1..x]]) [2..6] [(1,2)] [(1,2),(1,3),(2,3)] [(1,2),(1,3),(1,4),(2,3),(2…

project euler problem 9

ピタゴラスの三つ組(ピタゴラスの定理を満たす自然数)とはa

haskellで文字列を数字に変換する

haskellで文字列を数字に変換するにはreadを使う。 ただしreadは多相型なので後ろに型の識別子が必要。 Prelude> :type read read :: (Read a) => String -> a Prelude> read "123" <interactive>:1:0: Ambiguous type variable `a' in the constraint: `Read a' arising </interactive>…