返回第五章 百万级斐波那契(1 / 2)编程之战首页

“依上所述”,这字迹依旧在忠实地记录着题目,“若在800000到1200000之间,作何解?”

这是一个典型的算法问题,要求高性能。

斐波那契传统的通项公式,已经无法满足这种需求了,或者说,已经被时代前沿所抛弃了。

一般的通项公式,面对这个问题,就如同蜗牛一样爬,让人无法忍受。

需要用到的大整数加法,足以摧毁这种算法脆弱的体系。

这也恰恰体现了时代的局限性,毕竟斐波那契时代距今也相差近千年了。

杨成闭着眼睛,开始回忆以前在网上搜索的那一个个例子。

斐波那契矩阵,两倍项公式渐渐浮现在他脑海中,杨成嘴角咧出一丝笑意。

既然fn的公式不行,那就用f2n的公式!

他思索了片刻,用鹅毛笔蘸了蘸墨水,写下了一行公式:

f2nfn1fnfn1fn

这是一个对数级的算法,可以胜任大数据的挑战。

具体的算法他没有写,因为他并没有办法来验证程序的正确性,至于做单元测试,那更是想都别想。

令人惊讶的事很快发生了,这个两倍项公式被一个椭圆的金色线条环绕着,最后旁边也出现了个对勾。

“叮!”,一声清脆的系统音,“恭喜玩家您连续完成了阶段任务,请休息一刻钟,我们将为您准备该系列最后的一项挑战!”

“唉”,杨成感觉有些乏味了,这些题目确实比较益智,但总是一个人做,是不是太单调了。

于是他打开玩家面板,选中了客服按钮。

“你好!很高兴为您服务!自助服务请按0,人工服务请按1”。

杨成选择了“1”。