解题思路:
我们可以简单得出前6年的结果:
第1年,1头
第2年,2头
第3年,3头
第4年,4头
第5年,6头
第6年,9头
...
第n年,?头
观察后,不难发现n>4时,f[n]=f[n-1]+f[n-3];
注意事项:当n=0时,要记得退出循环;
参考代码:
#include<stdio.h>
int main()
{
int n,i,f[55];
do
{
scanf("%d",&n);
f[1]=1;f[2]=2;
f[3]=3;f[4]=4;
for(i=5;i<=n;i++)
f[i]=f[i-1]+f[i-3];
if(n>0)
printf("%d\n",f[n]);
else
break;
}while(n!=0);
return 0;
}
0.0分
7 人评分
WU-链表数据求和操作 (C++代码)浏览:1352 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:689 |
【计算球体积】 (C语言代码)浏览:1142 |
1908题解浏览:666 |
C语言程序设计教程(第三版)课后习题10.7 (用指针求解)浏览:1515 |
A+B for Input-Output Practice (I) (C语言代码)浏览:445 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:692 |
C语言程序设计教程(第三版)课后习题9.8 (C语言代码)浏览:565 |
老王赛马 (C++代码)浏览:937 |
明明的随机数 (C语言代码)浏览:960 |
飞翔无敌 2019-01-01 11:49:52 |
你给个简单的
老菜鸡 2019-12-15 10:38:48 |
晕