Project Euler 331(3)

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


O(N)のコードを書いて、奇数の場合も1小さい四角で考えてコードを書いた。5時間以上かけて動かしたが、答えが違う。ちょっと数値誤差があやしいといえばあやしい。あと奇数の場合もあやしい。もうちょっと考えないと。