Fibonacci 题目汇总

来源:互联网 发布:o2o源码开发 编辑:程序博客网 时间:2024/05/20 21:58

   原先总以为Fibonacci只能以快速矩阵幂和循环节求出,但随着学习的深入才知道,原来Fibonacci是属于数论类,而且可以用公式直接算出,而无需一下瞎推和暴力。

     FIBONACCI 公式:

                               这个数列是意大利中世纪数学家斐波那契在<;算盘全书>;中提出的,这个级数的通项公式,除了具有     a(n+2) =an+a(n+1)的性质外,还可以证明通项公式为:an=(1/√5)*{[(1+√5)/2]^n-[(1-√5)/2]^n}(n=1,2,3.....)  `````

            log(Fibonacci[n])=[(-0.5*log(5.0))+((double)n)*log(sqrt(5.0)+1.0)/2.0]/log(10.0);

        或者 fib=-0.5*log(5.0)/log(10.0)+((double)n)*log(g)/log(10.0)

        Fibobacci[n]~~pow(10.0,log(Fibonacci[n]))*10^k;(这里~~表示约等于,10^k表示需取多少位,用k控制)

        或者

         double  k=fib-floor(fib);
         double  ans=pow(10.0,k);
         while(ans<1000)ans*=10;

HDU

     Fibonacci 1568

     Number Sequence 1005

    Sibonacci Numbers 1893