HDUoj 1568 Fibonacci ( 数学
来源:互联网 发布:电力代维软件 编辑:程序博客网 时间:2024/06/05 08:17
Fibonacci
Description
2007年到来了。经过2006年一年的修炼,数学神童zouyu终于把0到100000000的Fibonacci数列
(f[0]=0,f[1]=1;f[i] = f[i-1]+f=2”>i-2)的值全部给背了下来。
接下来,CodeStar决定要考考他,于是每问他一个数字,他就要把答案说出来,不过有的数字太长了。所以规定超过4位的只要说出前4位就可以了,可是CodeStar自己又记不住。于是他决定编写一个程序来测验zouyu说的是否正确。
Input
输入若干数字n(0 <= n <= 100000000),每个数字一行。读到文件尾。
Output
输出f[n]的前4个数字(若不足4个数字,就全部输出)。
Sample Input
012345353637383940
Sample Output
011235922714932415390863241023
题解:
题是个挺有意思的题 以前在lijhtoj上写过一个思想非常类似的 见下图 不过还是在学长给出通项公式的基础下才写出来的TAT
(本来遇到这个题是在某个小oj上卡精度卡的恶心
//这里是前4位
AC代码
#include <bits/stdc++.h>using namespace std;int arr[40];void init(){ arr[1] = 1, arr[2] = 1; for(int i = 3; i <= 40; i++) { arr[i] = arr[i-1] +arr[i-2]; if(arr[i] > 9999) break; }}int main(){ init(); int n; while(~scanf("%d",&n)) { if(n <= 20) { printf("%d\n",arr[n]); continue; } double zz = -0.5*log10(5.0) + 1.0*n*log10((1+sqrt(5.0))/2.0); double yy = pow(10.0,zz-(int)zz); printf("%d\n",(int)(yy*1000)); }return 0;}
阅读全文
0 0
- HDUoj 1568 Fibonacci ( 数学
- HDU 1568 Fibonacci【数学】
- 【HDU 1568 Fibonacci】+ 数学
- HDUOJ 1021 Fibonacci Again
- HDU 1568 Fibonacci(数学 递推式)
- HDU 1568 Fibonacci (数学)
- hduoj!1086!【数学】
- HDOJ 题目1568 Fibonacci(数学,公式)
- 【杭电oj】1568 - Fibonacci(数学)
- HDUoj 4278 Faulty Odometer (数学
- HDU3117 Fibonacci Numbers【数学】
- Fibonacci(数学)
- Fibonacci (公式,数学)
- 【数学乱搞】HDU1568 Fibonacci
- [NOIP模拟][数学]Fibonacci
- HDUoj 6152 Friend-Graph ( 数学/暴力
- fibonacci数列(二) nyoj 数学
- 经典 数学问题 Fibonacci Numbers
- 如何把ubuntu的本地文件传到云端服务器(SSH)
- 读前辈的大话设计模式(九)之外观模式,抒自己的读后感
- 认证机构管理 - 认证业务范围分类表
- 百度网盘高速下载真实地址解析
- 认证机构管理 - 认证业务范围分类表
- HDUoj 1568 Fibonacci ( 数学
- selenium webdriver调用google chrome配置chromedriver
- JAVA企业面试题精选 Web基础 1-10
- 匈牙利算法模板 二分图最大匹配
- 深度学习与神经网络
- stud-2779裸bfs
- 《零基础入门学习Python》学习过程笔记【38类的继承】
- 【Leetcode】【python】Path Sum II
- POJ 3692 Kindergarten