【杭電-oj】-1715-大菲波数
フェナンス波数
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 17173 Accepted Submission(s): 5706
Problem Description
Fibonacci数列は、次のように定義されています.
f(1)=f(2)=1
f(n)=f(n-1)+f(n-2) n>=3.
n番目のFibonacci値を計算します.
Input
第1の動作の整数Nを入力し、次にN動作の整数Pi(1<=Pi<=1000)を入力する.
Output
出力はN行であり,各動作に対応するf(Pi)である.
Sample Input
用二位数组计算大菲波数,要明白i,j分别表示的意义(i表示第几个数,j表示这个数的第几位)。以及开始的初始化和最后的输出也要注意怎么写。
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 17173 Accepted Submission(s): 5706
Problem Description
Fibonacci数列は、次のように定義されています.
f(1)=f(2)=1
f(n)=f(n-1)+f(n-2) n>=3.
n番目のFibonacci値を計算します.
Input
第1の動作の整数Nを入力し、次にN動作の整数Pi(1<=Pi<=1000)を入力する.
Output
出力はN行であり,各動作に対応するf(Pi)である.
Sample Input
5 1 2 3 4 5
Sample Output
1 1 2 3 5
#include
int main()
{
int t,n,k;
int f[1001][211]={0}; // 0
f[1][1]=1;
f[2][1]=1;
for(int i=3;i<=1000;i++)
{
for(int j=1;j<=220;j++) // ,i ,j ,
{ // j
f[i][j]+=f[i-1][j]+f[i-2][j];
if(f[i][j]>9)
{
f[i][j]-=10;
f[i][j+1]++;
}
}
}
scanf("%d",&t);
while(t--)
{
scanf("%d",&n);
k=220;
for( ;f[n][k]==0;k--); // , f[n][k]!=0, ,
for( ;k>=1;k--) // , ,
printf("%d",f[n][k]);
printf("
");
}
return 0;
}