« Project Euler : Problem 56 | トップページ | Haskell で「エラトステネスの篩」 »

2010年12月 9日 (木)

Project Euler : Problem 57 ~ 漸化式

 問題はこちらをご覧ください。
 また、自作の "ForEuler module" に関してはこちらをご覧ください。

 

 考え方に関してはこちらをご覧ください。

 今回は、漸化式の分子と分母をタプルにした無限リスト "root2" を定義してみました。

import ForEuler (dexToList) root2 :: [(Integer, Integer)] root2 = iterate func (3, 2) where func (a, b) = (a + 2 * b, a + b) problem057 :: Int problem057 = length $ filter check $ take 1000 root2 where check (a, b) = size a > size b size x = length $ dexToList x main :: IO () main = print problem057

« Project Euler : Problem 56 | トップページ | Haskell で「エラトステネスの篩」 »

Haskell」カテゴリの記事

Project Euler」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/112020/50254343

この記事へのトラックバック一覧です: Project Euler : Problem 57 ~ 漸化式:

« Project Euler : Problem 56 | トップページ | Haskell で「エラトステネスの篩」 »

2016年7月
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            
フォト

最近のトラックバック

無料ブログはココログ