2008-11-23から1日間の記事一覧

Problem 102

http://projecteuler.net/index.php?section=problems&id=102三角形の内部判定。 外積を使うと楽。かな。 import Data.List cross (x,y) (u,v) = x*v-y*u containO [x,y,z] = sameSign.map (uncurry cross)$[(x,y),(y,z),(z,x)] where sameSign xs = all (>0…

Problem 101

http://projecteuler.net/index.php?section=problems&id=101 少し頭を使った。 ただの階差数列は1次の多項式 2階の階差数列は2次の多項式 3階の階差数列は3次の多項式 n階の階差数列はn次の多項式 なので 階差の山を作って 各高さの右端の数字を全部足…

Problem 100

http://projecteuler.net/index.php?section=problems&id=218 ついに100問。 に対して とすると のpell equationに。 ところで、pell equationの解は最小の解から順に生成できるみたいだけど なんで?はじめの解をn乗しても解なのはわかるけど 間に解がない…

Problem 99

http://projecteuler.net/index.php?section=problems&id=99 そのまま、log使って比較。 import Data.List import Data.Ord logPow x y = y*(log $ x) main = do f<-readFile "base_exp.txt" let xs = map (read.g) . lines $ f ::[[Double]] ans = maximumB…

Problem 103

http://projecteuler.net/index.php?section=problems&id=103良く分からないから、とりあえず入力してみたらあっていた。 後でコードかこう。[追記] Problem 105を利用 import Data.List import Data.Ord monotone xs = all (f.sort$xs) [1..length xs `div`…