@Moritz
2019-03-26T04:22:13.000000Z
字数 692
阅读 480
dotcpp
编程
C++
所有文稿
题目描述
有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?
输入
输入数据由多个测试实例组成,每个测试实例占一行,包括一个整数n(0 n=0表示输入数据的结束,不做处理。
输出
对于每个测试实例,输出在第n年的时候母牛的数量。
每个输出占一行。
样例输入
2
4
5
0
样例输出
2
4
6
找规律题,简单,一开始分析错误
/*dotcpp lq 1004: 母牛的故事*/
/*3.22 10:54 算法错误 问题分析不正确*/
#include <iostream>
#include <cmath>
#include <cstdio>
using namespace std;
int n;
long long cnt=1,rate=1;
/*
void cn(int year){
if (year==n) return;
if(year%4==0){
rate++;
cnt+=rate;
}
else cnt+=rate;
cn(year+1);
}
int main(){
while(scanf("%d",&n)==1&&n){
cnt=1,rate=1;
cn(1);
cout<<cnt<<endl;
}
system("pause");
return 0;
}*/
int main(){
long long a[60]={0,1,2,3,4};
for(int i=5;i<55;i++) a[i]=a[i-3]+a[i-1];
while(cin>>n) {
if (n==0) break;
cout<<a[n]<<endl;
}
return 0;
}
2019.3.22