Project Euler日記 21-30

ええかんじ

21. きょうは、はじめてぱいそんでかんすうをていぎしました。

22. もうこういうのではキレません。

- ページ読み込みはふつうにできる (Sugarの件でお世話になってる)

- リストのソートはふつうに new = sorted(old) とやればできる。

- ord(文字) で、文字のASCIIコードが手に入る。これを使えばアルファベット順を得るのは用意。

23. 愚直に実装したら10秒くらいかかったけど、スターを取得できているので問題ありません。ドニィ...

24. Python 順列 生成 [検索]

25. PE, でかい数が好きすぎる。まあわかるけど。でかい数DPメソッド(eg. 16, 20)便利すぎる。ところで、これで  PE level 1 になったそうです。

26. 2, 5で割れるのは明確に損なので除外して、そうすると mod d での 10 の位数がでかくなるような d が答えになる。

なんだろう、循環節ってテーマ、小学校のころはワクワクしたけれど、いまはなんとも思わなくなっちゃったな。これが大人になるってやつなのか...

27. ネタは有名なやつですが、使う知識は高度なものがなくてよかった。b: prime を要請すれば少しかも速いしれない。あらかじめ 2a^2 以下くらいの素数判定はできるようにしておくとよさそう。

ところで以前用意した (問題7でやった) 素数判定のコードが間違ってたんですよね。なにやってんだか。

28. ぷろぐらむをつかって、ひょうにすうじをかきこみましょう。もう算数しないので、真面目に計算することはやめました。

29. a1^b1 = a2^b2 となりうるのは、ある k について a1 = k^x, a2 = k^y とかとなるときのみ。 なので、以下の手順でカウントすればよい:

- a を 2 から順にみていく

- a^x なるもの (100以下) について「指数の集合」を更新する。たとえば a=2 のとき、8 については 3, 6, ..., 300 を集合に追加する。

- 更新し終わったら答えに足す

- みるべき a を管理しておき、一度みたものはチェックから外す

あらやだ、プログラミングっぽいことしちゃったわ...(恍惚)

30. 「数の玉手箱」キッズあるところの自分としましては、こういう出題は大歓迎なのであります。ナルシシスト数で検索検索ゥ

数の玉手箱もっかい出版してくれんかな〜