牛の物語
件名の説明:
それは毎年の始まり雌牛生まれ、牛を持っています。四年からの各雌牛が、また、各年生まれの雌牛の始まり。とき牛の総数は、n年にプログラミングしてください?
入力
整数N(0 <N <55)を含むテスト入力データの例は、複数の行当たり各テストケース、 、nはタイトルに記載されたような意味を。
N = 0は処理せずに、入力データの終わりを示します。出力
各テストケースのために、牛のn回目の出力の数。
行ごとの各出力。サンプル入力
2 4 5 0サンプル出力
2 4 6
トピック分析:
n年 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
F(N) | 1 | 2 | 3 | 4 | 6 | 9 | 13 | 19 | 28 |
表から分かるように、式はF(N)= F(N-1)+ F(N-3)
その答えによって:
#include <stdio.h>
int f(int n){ //递归函数
if(n<=4){
return n;
}else{
return f(n-1)+f(n-3);
}
}
int main()
{
int n;
while(scanf("%d",&n)!=EOF){
if(n==0)break; //n=0表示输入数据的结束,不做处理
printf("%d\n",f(n));
}
return 0;
}