doubleも8バイト長gcc。doubleは12バイト長。指数部15bit、仮数部64bit。計算時間的にはこれでも一瞬で終わるが、再度オーバーフローの問題が現れる。実装しかけて、前回のCodeIQ、サルベジオン問題で四則演算のごく一部だけ実装したlargeNumberクラスを思い出す今回はフィボナッチ数でどうせ足し算しか使わないので、流用することに。実装と、過去の自分のWikiを再度活躍させる場面が2箇所もあり、CodeIQをやってて良かったなぁ、と思った。結城先生の模範解答ではRubyを使ってらして、Rubyでは自動的に多倍長整数が実装されているので、もしかしたら多倍長整数の実装は想定してなかった?以前のサルベジオン問題でもその当たりは解説で触れられてないので、もしかしたら想定されてなかったのかも。自前実装はいいアイディアでは無かったかも知れないけれど(車輪の再発明的に)、前回の自分の実装を再利用できたのは良かった。結城先生の問題でも自動採点のテストケース、つまり計算速度/計算量の制約が出てきて、エンジニアとして腕の見せ所が出てきたのは嬉しい。