HDU 2018

题目本身很简单,用到了简单的递推。因为一只牛从第四年才开始生崽,所以第n年的牛个数即为前一年的牛数加三年前的牛数。即f(n)=f(n-1)+f(n-3),一头牛第一年的个数是1,第二年的个数是2,第三年的个数是3.


母牛的故事

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 61867    Accepted Submission(s): 30672



Problem Description

有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?

 


Input

输入数据由多个测试实例组成,每个测试实例占一行,包括一个整数n(0<n<55),n的含义如题目中描述。
n=0表示输入数据的结束,不做处理。

 


Output

对于每个测试实例,输出在第n年的时候母牛的数量。
每个输出占一行。

 


Sample Input

2
4
5
0

 


Sample Output

2
4
6

 


Author

lcy

 


Source

C语言程序设计练习(三)

 

#include <stdio.h>
int f(int a)
	{
		if(a>0&&a<5)
		return a;
		else 
		return f(a-1)+f(a-3);
	}
int main()
{
	int n,s;
	while(scanf("%d",&n)&&n!=0)
	{
		s=f(n);
	printf("%d\n",s);
	}
	return 0;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章