UVa 495 - Fibonacci Freeze

来源:互联网 发布:java 中checkRadio用法 编辑:程序博客网 时间:2024/05/17 03:10

题目:输出第n个Fib。

分析:大整数、模拟。

#include <stdio.h>#include <stdlib.h>#include <string.h>int  F[5005][305];int main(){//打表 F[0][0] = 0;F[1][0] = 1;for ( int i = 2 ; i <= 5000 ; ++ i ) {for ( int j = 0 ; j <= 301 ; ++ j )F[i][j] = F[i-1][j]+F[i-2][j];for ( int j = 0 ; j <= 301 ; ++ j ) {F[i][j+1] += F[i][j]/10000;F[i][j+0] %= 10000;}}int n;while ( scanf("%d",&n) != EOF ) {printf("The Fibonacci number for %d is ",n);int end = 300;while ( end >= 1 && !F[n][end] ) end --;printf("%d",F[n][end --]);while ( end >= 0 ) printf("%04d",F[n][end --]);printf("\n");}return 0;}