第八十三章 CMO賽場顯神通(五)
翌日上午八點,國決第二場開考。
第一題是道數論題,題目是這樣的:
1
1-1
1-2-1
1-3-3-1
1-4-6-4-1
1-5-10-10-5-1
1-6-15-20-15-6-1……
1、求第2019行數字之和;
2、取上述數字中的前100橫作為模型,按某種特定規律向上或向下移動此模型中的任意列數字串,使得:移動后形成的模型,其前100橫數字之和形成的數列an中,擁有最多項的斐波那契數。
3、求an的表達式。
這個看起來像黑客帝國里電腦代碼的東西,就是楊輝三角,也被稱作帕斯卡三角形。
對於楊輝三角,相信每一個高中生都不陌生,甚至不止是高中生,就連小學生也都接觸過楊輝三角。
不信回去翻翻小時候的寒暑假作業,裡面一定就有關於楊輝三角的思考題,一般都是觀察數字排列規律,要求推算出三角里的某一個數字。
當然,小學生只能做出簡單的楊輝三角,像是要求第2019項數字之和,這種靠純推算,那就是算到死都算不出來的!
只能用楊輝三角的求和公式:第n行數字和為2n-1。
得出來的答案是22018。
第一問純屬送分題,能坐在國決賽場教室里的人,是絕不可能不知道楊輝數列的求和公式的。
難點在後面。
第二問,取楊輝三角的前100橫作為模型,要求以特定規律上下移動模型中的任意列數字串,在移動后形成的新模型中,再取前100行數字之和形成新的數列an項中,使an的集中擁有最多的斐波那契數。
張偉抓著腦殼,感覺有點無從下手。
這第二問屬於一個開放性的問題——還是放得超級開的那種開放性!而也正是因為這種開發性,才使得這一問非常的難!
一百列數字串,選擇任意任意上下移動,這兩個「任意」一組合,特么得有上億種移動方案啊!
上億種啊!
再加上每一次移動后,跟著還要運算100次才能得到an的所有項,也就是說要把全部移動方式下的an一一羅列出來,你需要經行100000000000次運算!
而且還是多項運算!
如果真的用這種羅列的傻辦法解這道題,別說四個半小時了,就是給你四個半輩子你都算不出答案!
所以,這一題一定是有什麼捷徑的,否則這道題根本就是反人類嘛!
張偉先理了一下思路:第二問的第一步,應該得先確定如何移動數字串,因為只有先移動了數字串之後,an的集才是固定;而只有an的集固定以後,才能確定這個集裡面究竟有多少個斐波那契數。
那麼問題就來了,究竟該如何移動數字串呢?
這是個問題.……
張偉把所有他想得到的數論知識點,逐一在腦子裡面過了一邊:
歐幾里德的質數無限證明?倒是跟質數有關,但是跟這一題風馬牛不相及啊;
中國剩餘定理?用在這一題面前,倒是顯得挺剩餘的;
歐拉定理和費馬小定理?高斯的二次互反律?或者無窮遞降法?這些更是相去甚遠……
「沒道理啊!」快半個小時過去了,張偉還是束手無策,「第一題就這麼難,這是存心不讓人活了?」
百思不得其解的張偉,稍稍瞄了一下教室里其他的考生:一個個抓耳撓腮的,卷面同樣是空空如也。
「看來辣雞的不止我一個啊……」看到其他人和自己同樣「辣雞」,張偉心裡就好受多了,「要不這題先放放?」
看看時間,還有四分鐘就半個小時,張偉決定再試這最後四分鐘。
前面順著走怎麼都走不通,張偉這次決定要反著走試試,大膽假設,小心求證:先大膽的假設,an的集就是有斐波那契數列的前100項!
張偉先把an的前十羅列出來:1、1、2、3、5、8、13、21、34、55.
再按照假設的an值來移動數字串:a1=1,不用移動;a2=1,第2列要往下移動1格;a3=2,第3列要往下移動2格;a4=3,第4列要往下移動3格.……
剛移動了三下,好像就有規律了!將每一列都往下移動n-1格?
張偉按照這種規律,繼續往下移動嘗試著:
第5列往下移動5-1=4格,得到a5=5,符合!
第6列往下移動6-1=5格,得到a6=8,符合!
第7列往下移動7-1=6格,得到a7=13,還是符合!
第8列、第9列、第10列.……
張偉一直移動到20列,全都符合!
答案出來了:按照「每一列數字串都往下移動n-1格」的規律移動數字串,移動后形成的模型,其前100橫數字之和形成的數列an中的項,全部是斐波那契數!
第二小問,搞定!
第二問找到正確的規律,第三問在第二問的基礎上,基本就屬於送分題了:
f(1)=C(0,0)=1。
f(2)=C(1,0)=1。
f(3)=C(2,0)+C(1,1)=1+1=2。
f(4)=C(3,0)+C(2,1)=1+2=3。
f(5)=C(4,0)+C(3,1)+C(2,2)=1+3+1=5。
f(6)=C(5,0)+C(4,1)+C(3,2)=1+4+3=8。
F(7)=C(6,0)+C(5,1)+C(4,2)+C(3,3)=1+5+6+1=13。
……
F(n)=C(n-1,0)+C(n-2,1)+…+C(n-1-m,m)(m