zoj - 1828 - Fibonacci Numbers
来源:互联网 发布:js返回上一个页面 编辑:程序博客网 时间:2024/05/16 12:24
遇到高精度的题目,曾经是多么的不快,可是一次又一次硬着头皮写了过后,觉得,高精度的题目也想像中的那么烦……
这道大斐波数,更是乌龙,原来打算从右边找到不为0的位置来确定长度,不慎将 “!=” 写成了 “==” ,奇迹的是竟然AC了!
后来发现,把数为0的位也相加,不影响结果,还省去了求长度的麻烦,当然,占的内存多了点,哈哈!
#include <iostream>#include <string.h>using namespace std;int f[5010][1010]; //第1个5010用来存5010个斐波那契数(测试可知第5000项已超过了1000位),第2个1010表示给每个斐波那契数开1010位int main(){ int i, j; memset(f, 0, sizeof(f)); f[1][0] = 1; //给第1个斐波那契数置数 f[2][0] = 1; //给第2个斐波那契数置数 for(i = 3; i < 5010; i++) //从第3项开始,用前2项相加 { int C = 0; //C表示进位,开始设为0 for(j = 0; j < 1001; j++) { f[i][j] = (f[i-2][j] + f[i-1][j] + C) % 10; //%10后就是这一位该有的数字 C = (f[i-2][j] + f[i-1][j] + C) / 10; //相加产生的进位 } } int a; while(cin>>a) { for(j = 1001; j >= 0; j--) //寻找最高位 if(f[a][j] != 0) break; for(; j >= 0; j--) cout<<f[a][j]; cout<<endl; } return 0;}
- zoj 1828 Fibonacci Numbers
- zoj 1828 Fibonacci Numbers
- zoj - 1828 - Fibonacci Numbers
- ZOJ 1828 Fibonacci Numbers
- ZOJ 1828 Fibonacci Numbers
- ZOJ 1828 Fibonacci Numbers
- ZOJ 1828 Fibonacci Numbers (大数)
- zoj 1828 Fibonacci Numbers(大数加法= =)
- Fibonacci numbers
- Fibonacci Numbers
- Fibonacci Numbers
- Fibonacci Numbers
- Fibonacci numbers
- HDU 3117 Fibonacci Numbers
- hdu 3117 Fibonacci Numbers
- hdu3117 Fibonacci Numbers
- java fibonacci Numbers
- UVa10579 Fibonacci Numbers
- 运用smarty后台搭建和前台显示~
- Comparator和Comparable区别
- Spring--quartz中cronExpression配置说明
- PHP发展前景分析
- uva_10271 - Chopsticks (普通DP)
- zoj - 1828 - Fibonacci Numbers
- UIScrollView代码实现循环滚动
- Qt下QThread用法学习之多线程
- C语言随笔(一)
- ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
- Windows高危端口速查
- 短信与电话的拦截
- 利用消息队列来设置IPC
- ASP.NET 使用FTP文件上传、下载文件