hdu3117-Fibonacci Numbers
来源:互联网 发布:网络层 ip层 编辑:程序博客网 时间:2024/05/17 07:13
http://acm.hdu.edu.cn/showproblem.php?pid=3117
后四位存在周期15000,所以就打表打出了后四位的值。
前四位按照Fibonacci的通项公式取前四位即可
#include<iostream>#include<cstdio>#include<cstring>#include<cmath>using namespace std;int fi[ 100 ] = { 0 , 1 , 1 } ;int Last[ 15005 ] ;int main(){int n ;Last[ 0 ] = 0 , Last[ 1 ] = 1 ; for( int i = 2 ; i <= 15000 ; i++ ) Last[ i ] = ( Last[ i - 1 ] + Last[ i - 2 ] ) % 10000 ;for( int i = 2 ; i < 40 ; ++i )fi[ i ] = fi[ i - 1] + fi[ i - 2 ] ;while( cin >> n ) {if( n < 40 ){cout << fi[ n ] << endl ;}else{double temp = -0.5 * log10(5.0) + (n ) * log10((sqrt(5.0) + 1.0 ) /2.0 ) ;temp -= floor( temp ) ;temp = pow( 10.0 , temp ) ;while( temp < 1000 )temp *= 10 ;/*temp = (int)temp ;cout << temp << "..." << Last[ n % 15000 ] << endl ;*/printf( "%d..." , ( int ) temp ) ; printf( "%04d\n" , Last[ n % 15000 ] ) ;}}return 0 ;}
- hdu3117 Fibonacci Numbers
- Fibonacci Numbers-hdu3117
- hdu3117-Fibonacci Numbers
- hdu3117-Fibonacci Numbers
- HDU3117 Fibonacci Numbers【数学】
- hdu3117 Fibonacci Numbers
- hdu3117 Fibonacci Numbers (矩阵快速幂)
- HDU3117-Fibonacci Numbers(矩阵快速幂+log)
- HDU3117 Fibonacci Numbers 【通项公式】
- HDU3117 Fibonacci Numbers(矩阵快速幂)
- HDU3117 Fibonacci Numbers 求斐波那契的前后4位
- hdu3117
- hdu3117
- hdu3117
- Fibonacci numbers
- Fibonacci Numbers
- Fibonacci Numbers
- Fibonacci Numbers
- 百度地图API开发示例 For Android SDK
- JUnit4.x快速入门
- final 关键字 和 static 用法
- 07-添加字幕之经典字体
- 毕业这些年
- hdu3117-Fibonacci Numbers
- 对文件进行加密
- 内部类
- VS2010/MFC编程入门之六(对话框:创建对话框模板和修改对话框属性)
- boost——string_algo字符串的操作(三)
- 论文部分代码剪切
- javascript 面向对象二
- Android Activities学习[Android Developers译作整理]
- 图的定义与术语