利用普通生成函数解斐波那契数列的通项问题

最近一场模拟赛考了这个公式,发现自己不会证,在 @Y_B_X 大佬的帮助下学会了证明,记录一下方便复习

  • 问题:定义斐波那契数列 \(f_i=f_{i-1}+f_{i-2},f_1=f_2=1\),求 \(\{ f_i \}\) 通项。

解:首先设 \(\{ f_i \}\) 的普通生成函数为

\[F(x)=\sum\limits_{k \geq 1}{f_kx^k} \]

按套路,设

\[G(x)=\sum\limits_{k \geq 3}{f_kx^k}=F(x)-x-x^2 \]

那么有:

\[G(x)=\sum\limits_{k \geq 3}{f_kx^k}=\sum\limits_{k \geq 3}{(f_{k-1}+f_{k-2})x^k}=x\sum\limits_{k \geq 2}{f_kx^k}+x^2 \sum\limits_{k \geq 1}{f_kx^k}=x(F(x)-x)+x^2F(x) \]

结合 \(G(x)=F(x)-x-x^2\),移项解得:

\[F(x)=\frac{x}{1-x-x^2} \]

这就是斐波那契数列的生成函数。
到了这一步,我们将它级数展开,按套路设:

\[\dfrac{x}{1-x-x^2}=\dfrac{x}{(1-x·x_1)(1-x·x_2)}=\dfrac{A}{1-x·x_1}+\frac{B}{1-x·x_2} \]

可解得 \(x_1=\dfrac{1 + \sqrt 5}{2},x_2=\dfrac{1 - \sqrt 5}{2}\),整理上式有:

  • \(\dfrac{x}{1-x·x_2}=A+\dfrac{1-x·x_1}{1-x·x_2}B\)
  • \(\dfrac{x}{1-x·x_1}=A+\dfrac{1-x·x_2}{1-x·x_1}B\)
    在这两个式子中分别令 \(x·x_1=1,x·x_2=1\),最后可解出:

\[A=\frac{1}{\sqrt 5},B=-\frac{1}{\sqrt 5} \]

\(F(x)=\frac{A}{1-x·x_1}+\frac{B}{1-x·x_2}\)级数展开:

\[F(x)=A(\sum\limits_{k \geq 1}{(x·x_1)^k})+B(\sum\limits_{k \geq 1}{(x·x_2)^k}) \]

\(A,B,x_1,x_2\) 全部代入,最后有:

\[F(x)=\sum\limits_{k \geq 1}[\frac{1}{\sqrt 5}(\frac{1 + \sqrt 5}{2})^k-\frac{1}{\sqrt 5}(\frac{1 - \sqrt 5}{2})^k]x^k \]

于是有斐波那契数列的通项公式:

\[f_n=[x^n]F(n)=\frac{1}{\sqrt 5}(\frac{1 + \sqrt 5}{2})^n-\frac{1}{\sqrt 5}(\frac{1 - \sqrt 5}{2})^n \]

P.S.

  • \(f_0=f_1=1\),则通项公式为:

\[f_n=\frac{1}{\sqrt 5}(\frac{1 + \sqrt 5}{2})^{n+1}-\frac{1}{\sqrt 5}(\frac{1 - \sqrt 5}{2})^{n+1} \]

posted @ 2020-08-04 17:08  L_G_J  阅读(306)  评论(0)    收藏  举报