Description
设有一头小母牛,从出生第四年起每年生一头小母牛,按此规律,第N年时有几头母牛?
Input
本题有多组数据。每组数据只有一个整数N,独占一行。(1≤N≤50)。当N为0时,输入结束。
Output
对每组数据,输出一个整数(独占一行)表示第N年时母牛的数量。
Sample Input
1
4
5
9
20
0
Sample Output
1
2
3
13
872
Source
分析:很明显 用Fibonacci 数列来解决,注意用3阶。
代码:
1 #include<stdio.h> 2 long long fibonacci[52]; 3 int main() 4 { 5 int i,n; 6 fibonacci[1]=1; 7 fibonacci[2]=1; 8 fibonacci[3]=1; 9 fibonacci[4]=2; 10 for(i=5;i<52;i++) 11 fibonacci[i]=fibonacci[i-4]+fibonacci[i-3]+fibonacci[i-2]; 12 while(scanf("%d",&n)==1 && n!=0) 13 printf("%lld ",fibonacci[n]); 14 return 0; 15 }