Project Euler

今までに解いたProject Euler

ソースファイル: Microsoft OneDrive - Access files anywhere. Create docs with free Office Online. Friend Key: 186068_Hw0qIP8ugAzQDdCfJ67GKNC3Q7NO76Pl

Project Euler 70

解答:https://ideone.com/IxvPb3 解法 $\frac{n}{\varphi(n)}$が最小となる条件を考えると,$\varphi(n)=n-1$($n$は素数)なので,$n$が大きな素数であることが考えられます.しかし,このとき$n$と$\varphi(n)$で桁の置換はできません. $n$が2つの素数の積…

Project Euler 69

解答:http://codepad.org/AWFZdG1J 最後にも述べていますが,プログラムを書く必要がない問題だと分かりました.電卓があれば良いです. 解説 次の公式(2)を使用します: $n$を素因数分解して, $$ \begin{equation} n = {p_1}^{\alpha_1}{p_2}^{\alpha_2}\…

Project Euler 68

全てのノードに重複が無いよう,また'10'は外側のノードに来るように1~10の数字を配置しました. 結構早く答えは求まりますが,ソースで入れ子になってるループがなんかダサいです. スマートな解法はあるのでしょうか・・・ https://ideone.com/S6bSlV

Project Euler 67

ある行のノードへの最大コストは,その前の行の隣り合う2つのノードへの最大コストの大きい方で決まります. よって,1行読むごとに,その行に含まれるノードへの最大コストだけ記録すれば,100行読み終えたときに答えが求まります. https://ideone.com/TIB…

Project Euler 66

この問題を解くのに必要だったことを以下にメモします.定理の詳しい証明などは他の書籍を見て下さい. 解答:https://ideone.com/WF6K5w ペル方程式 Project Eulerの問題文中では「2次のディオファントス方程式を考えよう」と書かれていますが, $$\begin{e…

Project Euler 65

を配列に格納し,これを後ろから使って,連分数を普通の分数に直しました. Pythonです. http://codepad.org/DFbRlC4U

Project Euler 64

平方根が,整数部分と小数部分の和で表されるように展開しました. 時間が無いので,解けたという報告だけ. http://ideone.com/xS6Sqg

Project Euler 63

の乗の対数(底10)をとることを考えます. それによっての桁数が分かるので, を満たせば良いと分かります.右辺より, 左辺より, この左辺は,大で,10に近づき,9.0を超えると上の不等式を満たすは存在しなくなります. を得ます.従って,について,3つ上…

Project Euler 62

13, 23, 33, ... の立方数の各桁の数字をカウントしたとき, 0~9の個数が同じになる立方数は,互いに桁の置き換えを持つ立方数であることに気付きました. 0の個数ごとに枝分かれをし,そのそれぞれのノードから,1の個数ごとに枝分かれをし,... という多分…

Project Euler 61

4桁の各多角数ごとに上二桁が等しい数でリストを作り, 順序集合内に多角数が一種類ずつ現れるように,深さ優先探索をしました. http://codepad.org/CXwQpBDm

Project Euler 60

ダサいです。 http://codepad.org/ZJHBDLKC素数リストからいきなり5つ取るのではなく、 2つ取ってはそれらを組み合わせて素数にならなければ別の2つを、 3つ取ってはそれらを組み合わせて素数にならなければ別の3つを、、、 みたいにして無駄を省きました(枝…

Project Euler 59

問題文がわかりづらいですね・・・w 暗号鍵の1文字と暗号文の1文字でxorをとるようですね。何をもって完璧に復号できたか、ですが、 復号した文中に"the"や"can"があるとかは判定せず、その文が 英単語、数字、英文で使われそうな記号(具体的には、. , : ; …

Project Euler 58

正方形の4隅が素数であるかどうか判定するだけでした。http://codepad.org/TPp0wIAt

Project Euler 57

今回もPythonです。http://codepad.org/m8qW07sq

Project Euler 56

C言語で多倍長演算を実装してる途中で、あまりに面倒くさくなったので、 今回はPythonです。 http://codepad.org/iqjwda6Tオーバーフローを気にしなくて良いというのが嬉しいですね。

Project Euler 55

http://codepad.org/yk4p68Hfintでもlong long intでも50回回してたらオーバーフローしてしまったので、 半分の25回だけにしたところ正しいと判定されたので、 それを答えとします。

Project Euler 54

http://codepad.org/nrYZ3KQiA2345のストレートを考えなくて良いというのが簡単でいいですね。 手札のランクをソートしたら簡単に出来ました。

Project Euler 53

http://codepad.org/jr3RnmOjr = 0からn/2まで100万を超えないnCrの数を数えて、nからその数の2倍を引いて終了です (nCrをr = 0からnまでリストアップすると、r = n/2で対称なので)。

Project Euler 52

http://codepad.org/PCocUxKSちょろすぎw

Project Euler 51

久しぶりにProject Euler解いてみました。 AtCoderの問題でビットを使って解くと良いのがあり、それを参考に この問題でも、全探索のためにビットを使っています。 http://codepad.org/tj215xuhhttp://www.usamimi.info/~geko/arch_acade/elf009_prime/list.…

Project Euler 30

元の数というのについて考えたとき、上限がどこにも書いてないんですね。。 迷いましたが、結局多く当たれば問題ないだろう、ってことで、100万回まわしておきました← http://codepad.org/olqywf3e だいたいこれくらいだろう、というのはあるらしいですが、…

Project Euler 29

100の100乗って余裕でint型の範囲超えちゃうんですよね。。ってことでdoube型に値を格納するようにしました。 あとは、pow()関数の答えが1回でも同じになったとき余計にカウントしないように気をつけて終わりです。 http://codepad.org/8gxpnTLo

Project Euler 28

Eulerやってて、今回が1番短いんじゃないかってくらいのコードですw http://codepad.org/Ri6nRfTk n*nのときの四隅の和を、記憶しておいて1001*1001のときまで繰り返す、という方法です。 問題30番ちょっと前の問題って結構優しい気がする・・・。

Project Euler 27

なんと今回、400万回のループをさせていますww2000回のループが2重になっているので。。 でも、C言語はホントに早いです。3秒で答えが出ましたw http://codepad.org/IHsRTfxG

Project Euler 26

どんな数の循環かを判断させるのはすぐには思い浮かばなかったです。。 余りをいい感じに使ってやったらできましたね。 http://codepad.org/1VFu4pdz main()関数が少ない行で書けるのは気持ちがいいですw

Project Euler 25

1000桁というのにつまづきましたね。。多倍長ライブラリを紹介してもらって、Ubuntuを導入してたらその時見事にメモリが壊れました・・・w 結局GMPはあきらめて配列(要素数1000)の要素1つひとつを桁と見て、計算させました。 http://codepad.org/c8unuD0N

Project Euler 24

0から始まって連続する数列、なら順列を作ることができるコードを書くことができましたw ホントダメですね。。 まぁ、とりあえず通ったってことで・・・w http://codepad.org/2cpYfFgx ちなみに100行超えてますorz

Project Euler 24

明けましておめでとうございます! 今年もよろしくおねがいしますです。2010年はあっという間に過ぎてしまいました。。年をとるごとに時間が流れるのが早く感じるようになるというのはほんとなんですかね。。 まだまだ若いと思ってる16歳なんですがねw 昨日…

Project Euler 23

通りました! と言っても、今回もまた教えて下さった方のおかげなんですけど・・・w指摘してもらうと「ほんとだ。。問題文もっと読め俺。」こんな感じですのw この問題みたく、扱う数が数万で計算量が少ない問題は、簡単に書けてなくても答えが出るまでが…