一、斐波那契数列通项公式推导
我们知道斐波那契数列递推公式
fn=fn−1+fn−2(n≥2)
即
fn−fn−1−fn−2=0
求解这个递推关系的一种方法是寻找形式为
fn=qn
的解
因此得到
qn−qn−1−qn−2=0
qn−2(q2−q−1)=0
所以我们求解
q2−q−1=0
的解
发现方程的根为
q1=1+5–√2,q2=1−5–√2
因此
fn=(1+5–√2)n,fn=(1−5–√2)n
两者都为斐波那契递推关系的解。
因为非波那契递推关系是线性的且齐次,所以对于任选常数
c1,c2
fn=c1(1+5–√2)n+c2(1−5–√2)n
因为我们知道任意
fn的值,所以只需枚举两个n的数解方程组即可
{ (n=0) c1+c2=0 (n=1) c1(1+5√2)+c2(1−5√2)=1
解得
c1=15–√,c2=−15–√
综上所述:
非波那契数满足公式
fn=15–√(1+5–√2)n−15–√(1−5–√2)n
二、构造共轭公式并反求递推关系
为什么要讲这个东西呢
因为最近做到了几个题,涉及到求解含有根号的多项式的高次幂
即求解形式
(a+b√)n
对于这样的题目的求解,我们必然要联想非波那契通项公式
因此我们会构造数列
fn=(a+b√)n+(a−b√)n
类似于非波那契通项公式对吧
那么这个数列怎么求呢,我们要是知道递推关系就好了
所以下面说一下怎么求出递推关系
其实看了上面非波那契数列通项公式的推导过程大家就明白了,就是上面的过程倒着来一边嘛
我们设的推关系满足形式:
fn=p⋅fn−1+q⋅fn−2
类比上面推导过程相当于我们已经知道了方程
f2−pf−q=0
的两个解
f1=a+b√,f2=a−b√
所以带入求解p,q即可
最终得到:
{ p=2a q=b−a2
因此我们得到了递推式
fn=2a⋅fn−1+(b−a2)⋅fn−2
对于这样递推式的求解对于取模的情况,我们可以尝试打表看看取模有没有循环节,如果发现有那就可以直接线性预处理出循环节长度即可,否则用矩阵快速幂,可以解决所有递推式的快速求解