斐波那契数列的性质整理

https://www.cnblogs.com/Milkor/p/4734763.html

定义/递推式

(F_0=0,\,F_1=1)
(F_n=F_{n-1}+F_{n-2} quad (n>=3,n in mathbb{N}))

通项公式

[F_n = frac{1}{sqrt5} left[ left(frac{1+sqrt 5}{2} ight)^n+left(frac{1-sqrt 5}{2} ight)^n ight] ]

推导

类似于求解数列(a_n=pa_{n-1}+q)通项公式的待定系数法,

[F_n-aF_{n-1}=b(F_{n-1}-aF_{n-2}) ]

那么

[F_n = (a+b)F_{n-1}-ab cdot F_{n-2} \ left{ egin{aligned} a+b=1 \ -ab=1 end{aligned} ight. ]

解得

[left{ egin{aligned} a&=frac{1+sqrt 5}{2} \ b&=frac{1-sqrt 5}{2} end{aligned} ight. quad ext{or} quad left{ egin{aligned} a&=frac{1-sqrt 5}{2} \ b&=frac{1+sqrt 5}{2} end{aligned} ight. ]

设等比数列(c_n=F_n-aF_{n-1},; c_1=F_1+aF_0=1,; frac{c_n}{c_{n-1}}=b)

( herefore c_n=b^{n-1} Rightarrow F_n-aF_{n-1}=b^{n-1})
(F_n = b^{n-1}+aF_{n-1})

[left{ egin{aligned} F_n&=left( frac{1+sqrt 5}{2} ight)^{n-1}+left(frac{1-sqrt 5}{2} ight)F_{n-1} \ F_n&=left( frac{1-sqrt 5}{2} ight)^{n-1}+left(frac{1+sqrt 5}{2} ight)F_{n-1} end{aligned} ight. ]

[left( frac{1+sqrt 5}{2} ight)^{n-1}+left(frac{1-sqrt 5}{2} ight)F_{n-1} = left( frac{1-sqrt 5}{2} ight)^{n-1}+left(frac{1+sqrt 5}{2} ight)F_{n-1} ]

[sqrt{5}F_{n-1}=left( frac{1+sqrt 5}{2} ight)^{n-1}+left( frac{1-sqrt 5}{2} ight)^{n-1} ]

[F_n = frac{1}{sqrt5} left[ left(frac{1+sqrt 5}{2} ight)^n+left(frac{1-sqrt 5}{2} ight)^n ight] ]

关于斐波那契数列的一些恒等式

1: (F_1+F_2+cdots+F_n=F_{n+2}-1)
2: (F_1^2+F_2^2+cdots+F_n^2=F_{n}F_{n+1})
3: (F_1+F_3+F_5+cdots+F_{2n-1}=F_{2n})
4: (F_2+F_3+F_6+cdots+F_{2n}=F_{2n+1}-1)
5: (F_n=F_m F_{n-m+1}+F_{m-1} F_{n-m})
6: (F_{n-1} F_{n+1}=F_n^2+(-1)^n)

证明

1~4.都是用类似的方法。

比如1: (F_1=F_3-F_1,quad F_2=F_4-F_3, cdots, quad F_n=F_{n+2}-F_{n+1})

类似的分解。然后求和就能获得结果了。

对于5:

[egin{aligned} F_n &= F_{n-1}+F_{n-2} \ &= 2F_{n-2}+F_{n-3} \ &= 3F_{n-3}+2F_{n-4} \ &= 5F_{n-4}+3F_{n-5} \ &= cdots \ &= F_m F_{n-m+1}+F_{m-1}F_{n-m} end{aligned} ]

看出系数的规律了,2=1+1,3=2+1,5=3+2,……

用数学归纳法严谨证明一下:

1)当(m=2)时,(F_n=F_2F_{n-2+1}+F_{2-1}F_{n-2}=F_{n-1}+F_{n-2})成立。

2)设当(m=k quad (2 leq k leq n-2))时,(F_n=F_k F_{n-k+1}+F_{k-1} F_{n-k})成立。

(ecause F_{k-1}=F_{k+1}-F_k)
( herefore F_n = F_k F_{n-k+1} + left( F_{k+1}-F_k ight) F_{n-k})
(F_n=F_{k+1}F_{n-k}+F_k left( F_{n-k+1}-F_{n-k} ight))
(ecause F_{n-k+1}-F_{n-k}=F_{n-k-1})
( herefore F_n=F_{k+1}F_{n-k}+F_k F_{n-k-1}),说明当(m=k+1)时等式也成立。

综上,(F_n== F_m F_{n-m+1}+F_{m-1}F_{n-m})对于([2,n-1])内的任意一个整数(m)都成立。

斐波那契的数论相关

性质1:相邻项互质

[gcd(F_n,F_{n-1})=1 ]

根据gcd更相减损性质:(gcd(a,b)=gcd(b,a-b) quad (a>b))
(gcd(F_n,F_{n-1})=gcd(F_{n-1},F_n-F_{n-1})=gcd(F_{n-1},F_{n-2}))

不断套用上式得到(gcd(F_n,F_{n-1})=gcd(F_2,F_1)=1)

性质2:(gcd(F_n,F_m)=F_{gcd(n,m)})

由恒等式5可知
(gcd(F_n,F_m) = gcd(F_m F_{n-m+1}+F_{m-1}F_{n-m},F_m) quad (n>m))

(F_m F_{n-m+1})(F_m)的倍数,故
(gcd(F_n,F_m) = gcd(F_{m-1}F_{n-m},F_m)) (gcd的更相减损,可以消掉(F_m)的倍数)

因为(F_m,F_{m-1})互质,于是(gcd(F_n,F_m) = gcd(F_{n-m},F_m))

递归上式,

(gcd(F_n,F_m) = gcd(F_{n-m},F_m) = gcd(F_{n-m-m},F_m) = cdots)
(gcd(F_n,F_m) = gcd(F(n mod m),F_m))

再递归上式,我们需要比较(n mod m)(m)谁更大,用大的数mod小的数。这不就是辗转相除法求最大公约数吗?

int gcd(int i, int j){
    int r = i % j;
    return r == 0 ? j : gcd(j, r);
}

于是(gcd(F_n,F_m) = gcd(F_{gcd(n,m)},F_{gcd(n,m)}) = F_{gcd(n,m)})

性质3:(n mid m Leftrightarrow F_n mid F_m)

证明:当(n mid m)时,(gcd(F_n,F_m)=F_{gcd(n,m)}=F_n Rightarrow F_n mid F_m)

必要性也可以通过类似手法得证。

原文地址:https://www.cnblogs.com/1024th/p/10902775.html