解决斐波那契数列(3)超生的母牛

时间限制 1000 ms 内存限制 32768 KB 代码长度限制 100 KB 判断程序 Standard (来自 小小)
题目描述
有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?

输入描述:
输入数据由多个测试实例组成,每个测试实例占一行,包括一个整数n(0<n<55),n的含义如题目中描述。

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

输入例子:
2
4
5

输出例子:
2
4
6

这个题目的具体思路就是找到它的模型,也就是
F(n) = F(n-1)+F(n-3)(其中n>=4)
找到之后,我们就可以利用数组填充法,其中需要注意的是,这个题目中对n的要求并不大

#include <stdio.h>
#include <stdlib.h>

int main(){
    long arr[56];
    arr[1] = 1;
    arr[2] = 2;
    arr[3] = 3;
    arr[4] = 4;
    arr[5] = 6; 
    int i,n;
    for(i = 4;i<56;i++){
        arr[i] = arr[i-1]+arr[i-3];
    }
    while( scanf("%d",&n)!=EOF){ 
    printf("%ld\n",arr[n]); 
    } 
    return 0;
}

另外有一点需要注意的是对循环条件的控制
while( scanf("%d",&n)!=EOF)
如有不足,还望斧正!

全部评论

相关推荐

不愿透露姓名的神秘牛友
11-21 17:16
科大讯飞 算法工程师 28.0k*14.0, 百分之三十是绩效,惯例只发0.9
点赞 评论 收藏
分享
一个菜鸡罢了:哥们,感觉你的简历还是有点问题的,我提几点建议,看看能不能提供一点帮助 1. ”新余学院“别加粗,课程不清楚是否有必要写,感觉版面不如拿来写一下做过的事情,教育经历是你的弱势就尽量少写 2. “干部及社团经历”和“自我评价”删掉 3. 论文后面的“录用”和“小修”啥的都删掉,默认全录用,问了再说,反正小修毕业前肯定能发出来 4. 工作经验和研究成果没有体现你的个人贡献,着重包装一下个人贡献
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
10-12 10:48
已编辑
秋招之苟:邻居家老哥19届双2硕大厂开发offer拿遍了,前几天向他请教秋招,他给我看他当年的简历,0实习实验室项目技术栈跟开发基本不沾边😂,我跟他说这个放在现在中厂简历都过不了
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务