Project Eulerとか
Project Eulerというサイトがあるらしい.
要は,数学チックな問題がいっぱいあって,プログラミングして解きましょうという問題集のサイト.
PKU Judge Onlineみたいな感じです.
こういうのハマるので困ります.
自分は低脳なので一つ一つ解くのに時間が掛かるのでさらに困ります.
3桁同士の整数の積となっている,最大の回文数を求める問題について,
フォーラムに投稿しようと思ったのですが,なぜかロックされているのでここで地味に書きます.
んー,こういうのって駄目なのかな?駄目だったら消しますね.
typedef unsigned long long uint64; typedef uint64 natural ; natural mirror(natural num) { natural mirror = 0; do { mirror *= 10; mirror += num % 10; }while(num /= 10); return mirror; } natural f4() { natural lterm, rterm; natural lgst = 0; natural product = 0; for(lterm = 100; lterm < 1000; ++lterm) { for(rterm=100; rterm <= lterm; ++rterm) { product = lterm * rterm; if(product == mirror(product)) { if(lgst < product) { lgst = product; } } } } return lgst; }
フォーラムで見た限りではf4()の中にある2重ループを100〜999と100〜999のレンジで回しているものが多かったけど,
掛け算は交換可能なのだから,こんな風にかけるんじゃないんですか?
って書こうと思ったけどロックされているので…
多分,こういうサイトを小学校くらいでやらせたら受けるんじゃないのかなぁ.
Pythonみたく分かりやすい言語を少し学ばせれば絶対食いつくと思うんですが.
少なくとも僕は食いついて睡眠時間が減っていますよ!