Project Euler 453

http://projecteuler.net/index.php?section=problems&id=453

30着。ごり押し4コアで11時間。

土曜日の深夜1時の出題で、いつもより夜更かししたが、問題は見ず。寝坊して8時過ぎに起きて問題を見る。まだ誰も解けていない。これは超難問が来た。その日は買い物に出かけたときなどに考えたが何も思いつかず。寝る前に風呂に入った時に方針を思いついた。

翌朝電車の中で考えていたら行けそうな感触があった。場合分けをしてその一つ一つを潰していく。しかし、その一つ一つが難しく、Project Eulerの問題になりそうなものだ。金曜くらいに解ければ御の字だと思った。朝晩に少しずつ考えていった。

この方針では4つの場合に分けられる。そのうちの一つをさらに5つに分ける。そのうちの一つに勘違いがあったことに木曜日の帰りに気が付いた。そこからいくら考えても堂々巡りになり速くできない。

土曜日にその部分を除いて完成させた。約200秒だった。その後考えてもやっぱり例のところが速くならない。

その日の寝る間際にごり押しできることに気が付いた。というか、たぶんわかっていて無視していた。日曜日、454を片付けて、ごり押しのコードを書いた。寝る前に終わらなそうだったので、さっさと寝る。

翌日朝、4つのプロセスとも終わっていた。そこからすぐにそれをまとめるコードを書いてサブミット。合ってた。

フォーラムを見たら、その部分を延々と解説している人がいた。