这是正确情况 时的各年牛的数量 最后一位表示 这年的牛总数 ,只要知道了正确的各年情况,写出正确的代码不难,开始,没能正确理解 小牛到第四年就生的情况 写出了错误的各年情况 ,正确的理解题意是正确的前提啊! 注意 :第八年 牛的总数是19 而不是18 没打备注 可能看不懂 我的思路是 写出四个数组表示这一年 中 刚出生一年的牛 刚出生两年的牛 出生三年的牛 和能生儿子的牛 在 把他们加起来。
#include<stdio.h>
int main(){
int n,n1; // n表示年数
int s=2; //表示 第n年 羊的总数
int one[2];int two[2]; int three[2];int four[2]; // [0] 表示本年的 【1】表示 下一年的
while(~scanf("%d",&n)!=EOF){
if(n==0)
break;
n=n-1;
n1=n;
for(n=0;n<2;n++){one[n]=0;two[n]=0;three[n]=0;four[n]=0;}
n=n1;
four[0]=1;
while(n>0){
one[1]=three[0]+four[0];
s=four[0];//printf("four %d ",four[0]);
one[0]=four[0];
four[0]=one[1];
three[1]=two[0];
s=s+three[0];//printf("three %d ",three[0]);
three[0]=three[1];
two[1]=one[0];
s=s+two[0];//printf("two %d ",two[0]);
two[0]=two[1];
//printf("one %d\n",one[0]);
s=s+one[0];
n--;
}
printf("%d\n",s);
}
}
0.0分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复