斐波那契数列记录项

摘要:
前言:f[n]=f[n-1]+f[n-2];f[0]=0,f[1]=1;这是斐波那契公式。如果需要F[N],则计算N次;更一般地,我们知道它的公式只与n相关:Fn=5√ 5Fn=5√ 5Fn=5√ 5a=sqrt/5;b=/2;c=/2;fn=a;(没有乳胶痛。如果答案是Mod,则运算中存在问题。当然,矩阵可以很快。但我说的是数学中的一个愚蠢的方法。你可能会说,构造矩阵并不快。引入一个问题:找到第一个n,n˂=1000000009的斐波那契数列的sum%1000000009的值;怎么做?如果找到a,b可以sqrt%10^9+7,似乎10^9+9与10^9+9的a相同,b为308495997,b分别为691504013;Fn=/(a-b),则Sn=f1+f2+f3+…Fn=a^1+a^2+a^3+…a^n-b^1-b^2-…b^n/(a-c)%mod;=/(a-1)-{(b^(n+1)-b}/(b-1)/(a-b);这些都很容易问。其他应用程序99991

前言:f[n]=f[n-1】+f[n-2];f[0]=0,f[1]=1;

       这是斐波那契数列公式。如果要求F[N],要计算N次;

      更一般的知道其只与n有关的公式:   

Fn=55((1+52)n(152)n)
Fn=55((1+52)n(152)n)
Fn=55((1+52)n(152)n)
     a=sqrt(5)/5;

     b=(1+sqrt(5))/2;

     c=(1-sqrt(5))/2;

     fn=a(b^n-c^n);(不会Latex的痛,

     如果答案是Mod的话,运算时有问题的,当然可以矩阵快速米之类的。

但是我说一种数学上的傻逼方法。

如果mod 是一个素数,而且mod=5k+1或者mod=5k-1;

那么讲会有简洁方法;

构造一个等式  x*x-x-1=0 其解刚好是b,a;

结论对于一个这样的Mod一定能找打在Zp下的平方根(http://math.stackexchange.com/questions/523351/square-root-of-5-in-modulo-prime-field

比如:mod=99991

x*x-x-1(%99991)==(x-55048*(x-44944)%99991=x^2-99992x+2474077312(%99991);

所以求解的时候愉快的快速米,逆元就好了。可能你会说还是没构造矩阵来的快。

引入一个问题:求前n的斐波那契数列的sum%1000000009的值,n<=1000000009;

怎么做?

构造矩阵似乎比较难构造。

如果找到a,b即能sqrt(5)%10^9+7的话似乎就是等比数列

10^9+9的 a,b分别是 

 308495997, b=691504013;

fn=(a^n-b^n)/(a-b)  【a,b的值是前面的】

那么Sn=f1+f2+f3+...fn;

        =a^1+a^2+a^3+...a^n-b^1-b^2-...b^n/(a-b) % mod ;

        =(a^(n+1)-a)/(a-1)-{(b^(n+1)-b} /(b-1)  / (a-b) ;

这些都很好求啊。

还有一些在其他运用上

99991

免责声明:文章转载自《斐波那契数列记录项》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Pod容器中安装软件包linux时区时间问题下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

牛客网2017校招真题在线编程之合唱团问题——动态规划问题首秀

先贴题目 题目描述 有 n 个学生站成一排,每个学生有一个能力值,牛牛想从这 n 个学生中按照顺序选取 k 名学生,要求相邻两个学生的位置编号的差不超过 d,使得这 k 个学生的能力值的乘积最大,你能返回最大的乘积吗? 输入描述: 每个输入包含 1 个测试用例。每个测试数据的第一行包含一个整数 n (1 <= n <= 50),表示学生的个数...

JS中一道关于this和闭包的题

this和闭包的一道练习题 var num = 20; var obj = { num: 30, fn: (function (num){ this.num *= 3; num += 15; var num = 45; return function(){...

Uboot--Linux参数传递--ATAG【转】

转自:https://blog.csdn.net/gx19862005/article/details/28596539 Linux内核源码分析--内核启动命令行的传递过程(Linux-3.0 ARMv7) Linux内核在启动的时候需要一些参数,以获得当前硬件的信息或者启动所需资源在内存中的位置等等。这些信息可以通过bootloader传递给内核,比较常...

替代eval的方法

1、新建一个script标签,此方法我这里不提供,百度一搜一堆。 2、new 一个function函数(本人认为这种方法比上面那种方法要来的实在方便,且在node里也可使用) functionevil(fn) { var Fn = Function; //一个变量指向Function,防止有些前端编译工具报错 return new Fn(...

JSP页面之${fn:}内置函数

函数列表: 函数名 函数说明 使用举例 fn:contains 判断字符串是否包含另外一个字符串 <c:if test="${fn:contains(name, searchString)}"> fn:containsIgnoreCase 判断字符串是否包含另外一个字符串(大小写无关) <c:if test="${fn:con...

tfgan折腾笔记(二):核心函数详述——gan_model族

定义model的函数有: 1.gan_model 函数原型: defgan_model( #Lambdas defining models. generator_fn, discriminator_fn, #Real data and conditioning. real_data, generator_inputs,...