今までに解いたProject Euler

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

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

ベジエ曲線

以下のプログラムは2次ベジェ曲線を書きます. PicturePanel.java package beziercurve; import java.awt.Color; import java.awt.Graphics; import java.awt.Point; import java.util.ArrayList; import java.util.List; import javax.swing.JPanel; public…

魔方陣

奇数が入力されたときに,魔方陣を1つ生成します. ヒンズーの連続方式(Siamese methodとも言うらしい)を用いました. #include <stdio.h> #include <stdlib.h> void makeMagicSqu(int ***matrix, int n) { int x = n / 2, y = 0; int nextx, nexty; int cnt = 1; while( cnt <=</stdlib.h></stdio.h>…

素数判定と素因数分解

これからは日頃からプログラムを書く癖をつけようと思います. 素数判定 #include <stdio.h> int isPrime(int n) { int i; if( n < 2 ) return 0; if( n == 2 ) return 1; if( n % 2 == 0 ) return 0; for( i = 3; i * i <= n; i += 2 ) { if( n % i == 0 ) return 0;</stdio.h>…

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.…

時間計れるようにした。

こないだのモンテカルロが、クリアまでの時間を計ることができるようになりました。よかったら遊んでみてください。 http://goo.gl/aly48

モンテカルロ作った。

モンテカルロ(ソリティア)を作れ、という課題が出されました。コンソールで動くゲームよりも、マウスを使って操作することができるゲームの方が好きなので、また作りました。 http://goo.gl/aly48 バグが残ってるので、早めに直してしまいたいと思います。 …

動き続けるマウスカーソル。

パソコンの前から離れるけれど、何か操作してる状態にはしておきたい。という場面が最近多いので、作りました。 http://goo.gl/UggZg チェックすると、カーソルが動き続けます。 チェックをはずすと、止まります。

順列生成コード(2)。

前回のプログラム(http://d.hatena.ne.jp/maple0705/20110205/1296916917)がなんか嫌だったので書き直しました。 http://codepad.org/CNMO7Tli 追記(2011/9/23): プログラムにバグを見つけたので直しました。 上記のアドレスは更新されています。

たて対よこ 完成。

チャット機能も備えたゲームがやっとできました! http://goo.gl/51HLGしかし、チャットで日本語が入力できなくなってしまいました。いつか直します。

チャットプログラム。

たて対よこの右側を埋めるあれですw http://codepad.org/Yeea84KL チャットプログラムとは書きましたが、送受信には対応させてません。 テストしてないので。 自分で文字列を入力して、表示。みたいなことができるコードです。 表示領域をはみ出しても、マ…

たて対よこ オンライン版完成。

これで離れている人とも対戦ができますよw http://goo.gl/lT3xC 結構時間はかかってしまいましたが、遊べるようになったので嬉しいです。 相変わらず、右側は寂しいですが、必ず埋めます。 よかったら遊んでみてください。 追記(2011/3/18): ver.1.1.1を公…

たて対よこ。

オフライン版完成です! http://goo.gl/seCBKDxLibで書き直して、マウスでプレイできるようにしました。オンライン版では、右側の、空いてるとこをチャット欄にします。

(戦艦ゲームライク?)たて対よこ。

学校でまた課題が出されました。今回はゲーム制作です。 コンソール上で動かす感じになっちゃいますが・・・w ゲームの概要。 10×10のマスからなる盤面に、交互に長方形のピースを置いていきます。 先手が縦2×横1のサイズ、後手は縦1×横2のサイズです。これ…

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

順列生成コード。

えー、メモリが壊れOSが起動しなくなり、なおすことに専念したくなり勉強にも集中できない感じですはい。 いまは別マシン使ってます。 学校の課題でこんなものが出題されました。 数の並び「123456789」について、数と数の間に、任意に「+」「-」 を入れて、…

湯音ちゃん神経衰弱 - DxLib

アップするの忘れてました。よかったら遊んでみてください。 http://goo.gl/egkXy SkyDriveにあるものは全て自由に使ってくれて構いません。

単方向リスト構造。

こないだの不具合は直りました。ほんとは不具合でもなんでもないんですけどね・・・w ただの勘違いです。 getche()関数は、なんでも一文字の入力が行われたら終了するようです。Enterキーが押されるまでgetche()は終了しないものだと思ってましたw 放送中…

単方向リスト構造。

神経衰弱が完成してから、C言語の勉強のつづきをしてました。今日からリスト構造について勉強しています。 構造体・ポインタくらいまで終わってからは、C言語入門(http://goo.gl/T6fxB)さんを参考にさせてもらってます。ここはC言語を深く勉強するのにいいと…

神経衰弱 - DxLib

これが神経衰弱決定版ですww http://codepad.org/SI1ZTZYL実行ファイルなどをアップするのは今日の夜あたりに。このあと学校なので・・・w 選んだカードが違う色なら、あとでそこが消えてもそこはモザイクになってしまいますw つまり、どういう画像を使…

神経衰弱 - DxLib

いい感じにできました!普通に神経衰弱ですw (カードが16枚しかないのはアレですけど・・・w 複数回クリック判定がされてしまうバグの修正にはSleep()関数を使いました。シンプルでいいですよねこれwDxLibの関数じゃないというのは知らなかったですけど。…

 神経衰弱 - DxLib

かなり完成に近づいてきました!w 1枚目をクリックすると、そのカードの色が出て、2枚目をクリックすると、1枚目と色が同じかどうか判定が行われるという感じです。 同じなら2枚とも消える。違ったらまたカードが伏せられる。誰でもわかりますね。 1つだけ…

神経衰弱 - DxLib

お久しぶりです。 今日もまたゲーム制作です。 まだ完成してませんが、クリック判定は順調です。マウス座標を取得せずに、座標使うことをしようとしてもできるはずがないってのは、今ならわかることなのですが、気づかせてもらったときのなんとも言えない喜…

神経衰弱 - DxLib

競技プログラミングからは距離を置いて、(Eulerって競技プログラミング・・・? 一応正解数を競ってるから合ってるかな?w ゲーム制作をすることにしました! ちょっとした時間を埋めるのになにしようかな、、なんて思ってやったのが、神経衰弱でして。 や…

Project Euler 24

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

Project Euler 23

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

Align Assignments - VS2010 拡張機能。

今日は昨日言ったとおり一般教科の勉強してましたね。物理めんどいですの・・・。 自分がいる学科に、物理は結構必要な教科らしいのですが授業では話についていくことはできても、いざ家で復習となるともうお手上げですww (結局はサボりのツケがまわってき…