首页 > 其他分享 >斐波那契数列相关性质推导及证明

斐波那契数列相关性质推导及证明

时间:2024-08-28 15:29:33浏览次数:12  
标签:fib cnt gcd times 斐波 那契 aligned 2n 数列

大部分是上课做的笔记,包含我自己的一些思考的推导,希望可以帮助到大家!

(更好的阅读体验)洛谷专栏查看:点击此处


  • \(fib_{n+k}=fib_n \times fib_{k+1}+fib_{n-1} \times fib_{k}\)

经典模型:一段台阶有 \(n\) 阶,从第 \(\mathbf{1}\) 阶开始,每次可以向上跳 \(1\) 阶或 \(2\) 阶,跳到第 \(n\) 阶的方案数即为 \(fib_n\),跳到每一阶的方案数为斐波那契数列。

1 2 3 ... n-1 n n+1 ... n+k-1 n+k n+k+1 ...
1 2 ... k k+1
1 ... k-1 k

从 \(1\) 到 \(n+k\) 分为经过 \(n\) 和不经过 \(n\) 两种路线。设从 \(l\) 到 \(r\) 的路线数量为 \(cnt_{l,r}\),则根据模型结论,\(cnt_{1,n}=fib_n\)。

  • 经过 \(n\) 的路线数量 \(=cnt_{1,n} \times cnt_{n,k}\),把 \(n\) 看作 \(1\) 后,\(n+k\) 被看作 \(k+1\)(见上表第二行),所以 \(cnt_{n,k}= fib_{k+1}\)。总数为 \(fib_n \times fib_{k+1}\);
  • 不经过 \(n\) 的路线数量 \(= cnt_{1,n-1} \times cnt_{n-1,n+1} \times cnt_{n+1,n+k}\)。由于不能经过 \(n\),所以 \(cnt_{n-1,n+1}\) 有且仅有跳 \(2\) 阶一种方案,故 \(cnt_{n-1,n+1}=1\);把 \(n+1\) 看作 \(1\) 后,\(n+k\) 被看作 \(k\)(见上表第三行),所以 \(cnt_{n+1,n+k}=fib_k\)。总数为 \(fib_{n-1} \times 1 \times fib_k = fib_{n-1} \times fib_k\)。

综上所述,\(fib_{n+k}=\) 经过 \(n\) 的路线数量 \(+\) 不经过 \(n\) 的路线数量 \(=fib_n \times fib_{k+1} + fib_{n-1} \times fib_k\)

  • \(\gcd(fib_n,fib_{n-1})=1\)

连续使用更相减损术即可

\( \begin{aligned} &\gcd(fib_{k+1},fib_k)\\ =&\gcd(fib_k,fib_{k+1}-fib_k)\\ =&\gcd(fib_k,fib_{k-1})\\ =&\gcd(fib_{k-1},fib_{k-2})\\ =&\dots\\ =&\gcd(fib_2,fib_1)\\ =&\gcd(1,1)\\ =&1 \end{aligned} \)

  • \(\gcd(fib_n,fib_m)=fib_{\gcd(n,m)}\)

设 \(k=m-n, m=n+k\)

\(fib_m=fib_{n+k}=fib_n \times fib_{k+1}+fib_{n-1} \times fib_{k}\)

\(\gcd(fib_n,fib_m)=\gcd(fib_n,fib_n \times fib_{k+1}+fib_{n-1} \times fib_{k})\)

\(\because fib_n | fib_n \times fib_{k+1}\)

\( \begin{aligned} \therefore \quad &\gcd(fib_n,fib_n \times fib_{k+1}+fib_{n-1} \times fib_{k})\\ =&\gcd(fib_n,fib_{n-1} \times fib_{k})\\ =&\gcd(fib_n,fib_{n-m}) \end{aligned} \)

观察到 \(\gcd(fib_n,fib_m)=\gcd(fib_n,fib_{n-m})\) 与更相减损术中的 \(\gcd(n,m)=\gcd(n,n-m)\) 相似,所以将两者同时执行类似更相减损术的操作,过程中的 \(n,m\) 值始终相等。

所以 \(\gcd(fib_n,fib_m)=fib_{\gcd(n,m)}\)

  • \(\sum_{i=1}^{n}fib_i=fib_{n+1}-1\)

在等号左边补上一个 \(fib_2\) 后可以连续合并,最后再减去 \(fib_2=1\)。

\( \begin{aligned} \quad &\sum_{i=1}^{n}fib_i\\ =&fib_1+fib_2+fib_3+\dots+fib_{n-1}+fib_n\\ =&(fib_1+fib_2+fib_2+fib_3+\dots+fib_{n-1}+fib_n)-fib_2\\ =&(fib_2+fib_3+fib_3+fib_4+\dots+fib_{n-1}+fib_n)-fib_2\\ =&(fib_3+fib_4+fib_4+fib_5+\dots+fib_{n-1}+fib_n)-fib_2\\ =&\dots\\ =&(fib_{n-2}+fib_{n-1}+fib_{n-1}+fib{n})-fib_2\\ =&(fib_{n-1}+fib_n+fib_n)-fib_2\\ =&(fib_n+fib_{n+1})-fib_2\\ =&fib_{n+2}-fib_2\\ =&fib_{n+2}-1 \end{aligned} \)

  • \(\sum_{i=1}^{n}fib_{2i-1}=fib_{2n}\)

将 \(fib_{2n}\) 直接拆开即可。

\( \begin{aligned} \quad &fib_{2n}\\ =&fib_{2n-1}+fib_{2n-2}\\ =&fib_{2n-1}+fib_{2n-3}+fib_{2n-4}\\ =&fib_{2n-1}+fib_{2n-3}+fib_{2n-5}+fib_{2n-6}\\ =&\dots\\ =&fib_{2n-1}+fib_{2n-3}+\dots+fib_1\\ =&\sum_{i=1}^{n}fib_{2i-1}=fib_{2n} \end{aligned} \)

  • \(\sum_{i=1}^{n}fib_i^2=fib_n \times fib_{n+1}\)

将斐波那契数列转换成上图,每一项对应一个正方形的边长

总面积为 \(\sum_{i=1}^{n}fib_i^2\),短边长为 \(fib_n\),长边长为 \(fib_{n+1}\)

所以 \(\sum_{i=1}^{n}fib_i^2=fib_n \times fib_{n+1}\)

  • \(fib_n^2=fib_{n-1} \times fib_{n+1} + (-1)^{n-1}\)

暂时证明不来,可以从面积的方面考虑,大佬也可尝试数学归纳法

  • \(fib_n=\frac{fib_{n+2}+fib_{n-2}}{3}\)

\( \begin{aligned} \quad &fib_{n+2}+fib_{n-2}\\ =&fib_{n+1}+fib_n+fib_{n-2}\\ =&fib_{n}+fib_{n-1}+fib_n+fib_{n-2}\\ =&2fib_n+fib_{n-1}+fib_{n-2}\\ =&3fib_n \end{aligned} \)

\(\therefore \frac{fib_{n+2}+fib_{n-2}}{3}=\frac{3fib_n}{3}=fib_n\)

  • \(\frac{fib_i}{fib_{i-1}}=\frac{\sqrt{5}+1}{2} \approx 1.618\)

  • \(\frac{fib_i}{fib_{i+1}}=\frac{\sqrt{5}-1}{2} \approx 0.618\)

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

标签:fib,cnt,gcd,times,斐波,那契,aligned,2n,数列
From: https://www.cnblogs.com/jerrycyx/p/18384750

相关文章

  • 全网最易懂的解题——C语言“求斐波那契数(递归)”
    那先来知道什么是斐波那契数列吧前两个数相加等于第三个数,如果其中数字都满足此条件,那么这就是斐波那契数列 现在我们要求第n个斐波那契数,代码框架先搭出来吧,找斐波那契数的函数就命名为Fib吧//求斐波那契数intmain(){ intn=0; printf("请输入你想知道第几个斐波......
  • 数列(贪心思维题)(很有意思哦)(读者 rp +++++++)
    数列(贪心思维题)(很有意思哦)(读者rp+++++++)序这是前段时间做的一道题,蛮有思维含量的,而且对于代码实现能力也有一定要求。作者也交了好多发......
  • 洛谷P1182 数列分段 Section II
    传送门:P1182数列分段SectionII消灭人类暴政,世界属于三体题目意思:题目说的很明白了思路:考虑部分分:20%的数据保证n<10,直接爆搜;40%的数据保证n<1000,n^2+前缀和搞定100%的数据:求每段最大和的最小值:明显的二分(n在10^5的范围也说明了这一点,因为二分查找的......
  • 面试+算法之动态规划(Java):斐波那契、背包问题、走棋盘、分苹果、连续子数组最大和、
    概述Dynamicprogramming,简称DP,动态规划,基础算法之一,维基百科的解释:是一种在数学、管理科学、计算机科学、经济学和生物信息学中使用的,通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。动态规划常常适用于有重叠子问题和最优子结构性质的问题,动态规划方法所耗时......
  • 【代码随想录训练营第42期 Day32打卡 - 从零开始动态规划 - LeetCode 509. 斐波那契数
    目录一、做题心得二、动规五步走三、题目与题解题目一:509.斐波那契数题目链接题解1:记忆性递归 题解2:动态规划题目二:70.爬楼梯 题目链接题解:动态规划题目三:746.使用最小花费爬楼梯题目链接题解:动态规划三、小结一、做题心得今天开始动态规划章节的第一......
  • 斐波那契数列
    1.函数递归:递归的本质就是自己调用自己。2.递归的定义:递归本身就是一个循环。3.递归的思想:越来越接近已知值。4.递归的总结:                  1)通过自己调用自己吧复杂的逻辑简单化,可以求得最终结果;         2)递归要有开始条件,也要有......
  • SciTech-Mathmatics-Mathmatical Analysis-Series: 解数列通项的通用模型
    解数列通项的通用模型......
  • 代码随想录day32 || 509 斐波那契数列,70 爬楼梯,746 最小代价爬楼梯
    509斐波那契数列funcfib(nint)int{ //dp五部曲 //1dp数组含义以及下标含义:本题保存的是完整的斐波那契数列,i对应数列的第i个数字 //2递推公式:F(n)=F(n-1)+F(n-2) //3dp数组初始化:由递推公式推到,0,1两位需要手动赋值,否则,oor //4遍历顺序:求......
  • P10633 BZOJ2989 数列/BZOJ4170 极光 题解
    题目传送门前置知识CDQ分治|权值树状数组及应用|曼哈顿距离与切比雪夫距离的相互转化解法增加一维为时间戳,那么操作\(1\)等价于单点加。曼哈顿距离直接跑CDQ分治,貌似不太可做,考虑转化为切比雪夫距离。原曼哈顿坐标系中的点\((x_{1},y_{1}),(x_{2},y_{2})\)间的......
  • 等差数列平方和公式
    因为想把P3792哈希做法贺到P5278去,但是不知道等差数列平方和怎么求啊!所以就有了这篇记录。搜到的要么是错的要么看不懂,只能自己推一个看看了~设\(a\)为数列首项,\(d\)为公差,\(n\)为项数则原数列可表示为\(a^2+(a+d)^2+(a+2d)^2+...+(a+(n-1)d)^2\)拆项得\(a^2+......