Project Euler

格好良くなってる!

すげー!もうちょっとで完全復活の模様。ご苦労だったと言いたいところだがry GJすぎる。

80

calc v d = calc' 1 where calc' x | v < (d * 10 + x) * x = x - 1 | otherwise = calc' (x + 1) root v d | v == 0 = [] | otherwise = x : root ((v - p) * 100) (d * 10 + x * 2) where x = calc v d p = (d * 10 + x) * x root n 0 でsqrt(n)の無限リス…

188

たぶん22番目くらいにとけーた。面白いねこれ!

79

ただのトポロジカルソートだよねって思ったけど手でやってしまった。フォーラムを覗いて、あるあるwwwww

phi関数絡みで

Problem 70を解き終わった後に、Eulerたんがなんか自慢げに解説してるのを見てちょっと可愛いなーとか思ってしまった訳ですが、本当に華麗なので飛ばさずに読んであげてください。俺みたいに、「10000000?brute forceでカップラーメンコースだなw」ってい…

オイラーのphi関数 in ぷろぐらむ

http://www.prefield.com/algorithm/math/euler_phi.html 最近Project Eulerでお世話になっているphi関数について。ちょと感激したので思わず。 phi(n) = n * (1 - 1/p1) * ... * (1 - 1/pn) (pi (1素因数分解したもの) な訳ですが、小さい方の素数から n -=…

微復活

まだまだmust be monitored very carefullyな状態らしいけども…。なんかフォーラムがもの凄く重いから、しばらくあんまり激しい事はしないようにしよう。ただの転送量とか処理量調整のために重いんだったら良いんだけど…。

復活間近

be patient((((((´д`)))))

大丈夫かな〜

Eulerたんが頑張ってるみたいですが、無事打開策が見つかるんだろうか…。早く続きがやりたいけど何も手伝えなくて切ないううう。

鯖停止

過負荷のためしばらく止まるそうですorz 現在1問未提出で40%の状態。セツナス。

29%

たぶん毎日3時間くらいずつやってやっと55問。こんなことしてる場合じゃないのにwww でもエラトステネスの篩 in C++のタイピング速度がもの凄く速くなった気がするwwwwwwうぇwwwww 偶数を予め排除したやつも30秒くらいで書けるようになった。I…

187

簡単だたけど2secかかったせつねぇ。でも今のやり方だと篩を改善しない限りこれ以上の高速化は無理ぽ。

Problem 69

brute force(←なぜか格好良くみえる)にやっても時間がかかるだけだったので、初めて数学チックに考えてみたかもしれない問題。phi(n)を高速に求める方法は思いつかなかったので、どうやると n/phi(n) が大きくなるのか考えてみた。で、Wikipediaで興味深い式…

Problem 187

Problem 187 accessible on Sat 22 Mar 2008 at 9.00 am [GMT] らしい。100%の方々瞬殺しちゃってください。

Problem 33

これは良いさいたまトラップ。問題が意味不明だった。俺の英語力が無いのかと思ったけど、普通にみんな問題ウンコとか言ってたから安心。問題を分かりやすく書くと 以下の条件を満たす分数が丁度4つある。それらを全て掛け合わせて、既約分数に直したときの…

Problem 56

Haskellが強力すぎて勉強になりません\(^o^)/ maximum $ map (sum . map Char.digitToInt . show) [a^b | a <- [2 .. 99], b <- [2 .. 99]]逆にC++とか使った方がためになるんじゃ…とか思ったけど、ここまで楽だともうC++でやる気がおこらねぇ…。Haskellで…

Problem 113

[10^n, 10^(n+1))の区間にどれだけ増える数と減る数が含まれるのかをn=1,2,...という感じでDPで計算して解いたけど、スレ見たらみんな賢すぎ/(^o^)\

おそ

Project Eulerの問題をできるだけHaskellで解こうとしてるけど、Haskellで速いプログラムを書けません。ヘタレ。21とか pdivs n = [x | x <- [1 .. n `div` 2], n `mod` x == 0] amicable a = sum (pdivs a') == a && a' /= a where a' = sum (pdivs a) > su…

Problem 5

> foldl lcm 1 [1 .. 20]これは酷い。なんか色々考える前にこう言うのが頭に出てきちゃうのをどうにかしたいけど、これはこれで良いんだろうか…。