HDU3117】的更多相关文章

[HDU3117]Fibonacci Numbers 题面 求斐波那契数列的第\(n\)项的前四位及后四位. 其中\(0\leq n<2^{32}\) 题解 前置知识:线性常系数齐次递推 其实后四位还是比较好求,矩阵快速幂就可以了,主要是前四位. 先用线性常系数齐次递推求出斐波那契数列的通项公式 \[ f_n=\frac{\sqrt 5}{5}\left((\frac{1+\sqrt5}{2})^n-(\frac{1-\sqrt5}{2})^n\right) \] 因为数列的前\(39\)项我们…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1568 题意:如标题所示,求斐波那契数前四位,不足四位直接输出答案 斐波那契数列通式: 当n<=20的时候,不足四位,所以直接打表. 当n>20的时候,大于四位的时候,ans满足这个公式:ans=-0.5*log10(5.0)+num*1.0*log10((1+sqrt(5.0))/2.0); 这个公式是怎么来的呢?我们可以对an取10的对数,根据对数的性质. log10(ans)=log10(1/…
Fibonacci Numbers Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 1362    Accepted Submission(s): 564 Problem Description The Fibonacci sequence is the sequence of numbers such that every eleme…
题目:Fibonacci Numbers 链接:http://acm.hdu.edu.cn/showproblem.php?pid=3117 分析: 1)后四位可以用矩阵快速幂解决.$T= \left[ \begin{array}{cc} 0 & 1 \\ 1 & 1 \end{array} \right] $ 2)前四位:Fibonacci公式:$ans= \frac{1}{\sqrt{5}} * { ( {\frac{1+sqrt{5}}{2}}^n - {\frac{1-\sqrt{…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3117 题目大意:对于给定的一个数 n ,求斐波那契数F(n).对于超过八位的数,给出首末四位即可. 解题思路: 首先,由题目给出的样例易知,当n<40,F(n)不超过八位,这部分用个循环直接打表求出即可. 当n>=40,对于后四位,我们可以用矩阵快速幂算法,利用公式:来求解,记得模10000即可.而对于前四位......这个的数学要求就有点高了......请看: 图源:http://www.cnb…
题意:       求斐波那契的前后4位,n <= 10^8. 思路:       至于前四位,和hdu1568的求法一样:       http://blog.csdn.net/u013761036/article/details/38726907 后四位也很好求,后四位我们可以用矩阵+快速幂去求,斐波那契的矩阵 很好推 x0 x1 *  0 1  =  x1 x2           1 1 这样就直接ok了,后四位直接在跑矩阵的时候对10000取余就行了.  #include<stdio…
链接:传送门 题意:给一个 n ,输出 Fibonacci 数列第 n 项,如果第 n 项的位数 >= 8 位则按照 前4位 + ... + 后4位的格式输出 思路: n < 40时位数不会超过8位,直接打表输出 n >= 40 时,需要解决两个问题 后 4 位可以用矩阵快速幂求出,非常简单 前 4 位的求法借鉴 此博客! balabala:真是涨姿势了-- /****************************************************************…