利用生成函式求斐波那契數列通項公式

2022-04-29 20:51:08 字數 1765 閱讀 5465

先吐槽一下,學習這玩意兒的時候真的是深深的明白了自己的弱小,人家的乙個"解得"我居然解了兩個小時。。qwq

斐波那契數列:

\[f_i = f_ + f_

\]\[f_0 = f_1 = 1

\]普通生成函式:

簡單來說用多項式\(\sum_^ a_ix^i\)的係數表示序列的元素

同時因為我們不關心\(x\)的取值,因此\(\sum_^a_ix^i\)又稱作以\(x\)為自由元的形式冪級數

常見的有:

\(\frac = 1 + x + x^2 + x^3 + \dots + x^\)

證明:

後半部分可以直接由通項公式得到\(s_n = \frac}\),當\(x \in (-1, 1)\),那麼\(\lim_ x^ = 0\)

將\(x\)替換為\(xk\)得

\(\frac = 1 + kx + k^2x^2 + k^3x^3 \dots + k^x^\)

設\(a = 1 + 1x + 2x^2 + 3x^3 + 5x^4 + 8x^5 \dots\)

根據遞推式,我們可以這樣變化,顯然有

\[\begin

a = \ 1 + 1x + &2x^2 + 3x^3 + 5x^4 + 8x^5 \dots \\

xa = \ \ \qquad x + &1x^2 + 2x^3 + 3x^4 + 5x^5\dots \\

x^2a =\qquad \qquad &1x^2 + 1x^3 + 2x^4 + 3x^5 \dots

\end

\]那麼可以得到乙個方程\(a - xa - x^2a = 1\)

整理一下\(a =\frac\)

這樣我們就得到了斐波那契數列的生成函式,然而並沒有什麼卵用,因為我們不能直接通過觀察看出每一項的係數。

現在考慮一下,我們接下來可以幹什麼。我們已經知道了\(\frac\)和\(\frac\)所表示的序列。接下來要幹的當然是把\(\frac\)往上面的兩個式子轉化。

\(\frac\)這玩意兒下半部分是個一元二次方程,我們可以配方

\[1-x-x^2 = (1-\phi_1x)(1-\phi_2x)

\]\[\phi_1 = \frac}, \phi_2 = \frac}

\](解的時候可以直接把後面的式子拆開,把這兩個式子對應項聯立組成方程組, \(\phi_1 \phi_2\)的取值是可以反過來的)

這個時候我們發現已經找到與\(\frac\)的聯絡了,我們可以把\(\frac\)拆成求和的形式。可以裂一下項

原式變為\(\frac + \frac\),然後再解乙個方程\(a(1-\phi_2 x) + b(1-\phi_1x) = 1\)

解這個方程就沒那麼休閒了,這裡我們選擇把\(x\)當做主元對方程進行變換

\[(a+b - 1) - x(a\phi_2 + b\phi_1) = 0

\]這樣就好處理了,只要列個二元一次方程組

\[\begin

a-b-1 = 0\\

a\phi_2 + b\phi_1 = 0

\end

\]解一下可以得到\(a = \frac} \phi_1, b = -\frac} \phi_2\)

帶回去\[a = \frac} \frac - \frac} \frac

\]那麼第\(n\)項的公式為

\[a_n = \frac} ((\frac})^ - (\frac})^)

\]生成函式-羅煜楚(版權原因暫不公開)

特別感謝張一釗老師qwq

斐波那契數列通項公式

斐波那契數列指的是每一項都等於前兩項之和的數列,定義為f 1 1,f 2 1,f n f n 1 f n 2 n 3 我們先來研究形如f n c1f n 1 c2f n 2 的數列。對於這樣的數列,f n xf n 1 與f n 1 xf n 2 的比值一定是乙個定值,即 將其進行移項運算,得 對應...

利用普通生成函式解斐波那契數列的通項問題

最近一場模擬賽考了這個公式,發現自己不會證,在 y b x 大佬的幫助下學會了證明,記錄一下方便複習 解 首先設 的普通生成函式為 f x sum limits 按套路,設 g x sum limits f x x x 2 那麼有 g x sum limits sum limits f x k x ...

求斐波那契數列

一 用陣列求取斐波那契數列第n項的數值 非遞迴 斐波那契數列求取思想 第n項 第n 1項 第n 2項 function getvalue n var j 0 while j n 1 return arr j else alert getvalue 8 求第八項的值 二 使用遞迴求取第n項的值 fun...