时间限制:1Sec内存限制:128MB通过:45提交:83
题目描述
有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?
输入
输入数据由多个测试实例组成,每个测试实例占一行,包括一个整数n(0 < n < 55),n的含义如题目中描述。当输入n=0时表示输入结束,不作处理。
输出
对于每个测试实例,输出在第n年的时候母牛的数量。每个输出占一行。
样例输入
2
4
5
0
样例输出
2
4
6
#include<bits/stdc++.h>
using namespace std;
int main()
{
int a;
while(1)
{
cin>>a;
if(a==0)
break;
int s1,s2,s3,s4;
if(a<=4)
{
cout<<a<<endl;
}
else
{
a-=4;
s1=s2=s3=s4=1;
for(int i=0;i<a;i++)
{
s4=s3+s4;
s3=s2;
s2=s1;
s1=s4;
}
cout<<s1+s2+s3+s4<<endl;
}
}
}