Life Goes On

まあまあだけど楽しんでる方です

2008-05-01から1ヶ月間の記事一覧

56問目

http://projecteuler.net/index.php?section=problems&id=56 a, b 自然数 ab の各桁の数字の和の最大値を求める。 問題文の通りです。 import Data.Char main = print $ euler056 99 99 euler056 :: Integer -> Integer -> Int euler056 ma mb = maximum $ m…

57問目

http://projecteuler.net/index.php?section=problems&id=57 √2は以下のように連分数展開できる。 1 + 1/2 = 3/2 = 1.5 1 + 1/(2 + 1/2) = 7/5 = 1.4 1 + 1/(2 + 1/(2 + 1/2)) = 17/12 = 1.41666... 1 + 1/(2 + 1/(2 + 1/(2 + 1/2))) = 41/29 = 1.41379... …

55問目

http://projecteuler.net/index.php?section=problems&id=55 47は逆順にして足すと 47 + 74 = 121 で回文となる。349は 349 + 943 = 1292, 1292 + 2921 = 4213, 4213 + 3124 = 7337 と3回の操作で回文となる。196のように何度操作しても回文にならない数(Ly…

53問目

http://projecteuler.net/index.php?section=problems&id=53 1 ≤ n ≤ 100の n に対して、nCr が百万を超えるものがいくつあるか数える。 素直に求めます。 main = print $ euler053 100 euler053 :: Integer -> Int euler053 m = length $ filter (> 1000000…

54問目

http://projecteuler.net/index.php?section=problems&id=54 ポーカーの手を二人分千組含むファイルから、一人目のプレイヤーが勝つ組がいくつあるかを求める。 それぞれの手についてワンペアは1点、ロイヤルフラッシュは9点といった点数をつけ、その大小を…

52問目

http://projecteuler.net/index.php?section=problems&id=52 125874は2倍すると251748となり、元の数と同じ数字で構成されている。同様に2倍、3倍、4倍、5倍、6倍した数が全て同じ数字で構成されるような数を求める。 6倍しても桁数が変わらないことから、元…

51問目

http://projecteuler.net/index.php?section=problems&id=51 56003は3桁目と4桁目の数字を置き換えると、56003, 56113, 56333, 56443, 56663, 56773, 56993と7つの素数を構成する。同様に一部の数字を置き換えることで8つの素数を構成する数のうち、最小のも…