您的位置:首页 > 其它

Project Euler problem 2

2012-11-02 20:58 387 查看
这道题目的大意就是求小于等于400W的斐波那契数中偶数的和

看起来还是直接for就行了。

不过我们总要思考一下更优的解法。

观察斐波那契数列

1 1 2 3 5 8 13 21 34 。。。。

可以发现第3,6, 9。。。。项都是偶数

这是为什么呢, 很简单由于斐波那契数列的前两项是奇数

那么第3项必然是偶数,第4项是奇数跟偶数的和是奇数,第5项还是奇数跟偶数的和,然后第6项则是奇数与奇数之和了

如此循环往复,则发现3,6,9。。。等项是偶数了

对于斐波那契序列 有

F(n) = F(n-1) + F(n-2)

= F(n-2)+F(n-3)+F(n-2)=2 F(n-2) + F(n-3)

= 2(F(n-3)+F(n-4))+F(n-3))=3 F(n-3) + 2 F(n-4)

= 3 F(n-3) + F(n-4) + F(n-5) + F(n-6)

= 4 F(n-3) + F(n-6)

然后如果我们把符合要求的项提出来作为一个新的序列。

会发现新的通项公式为

E(n)=4*E(n-1)+E(n-2)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: