习题4-11 兔子繁衍问题 (15分)
2020-04-09 12:20
316 查看
习题4-11 兔子繁衍问题 (15分)
题目描述
一对兔子,从出生后第3个月起每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子。假如兔子都不死,请问第1个月出生的一对兔子,至少需要繁衍到第几个月时兔子总数才可以达到N对?
输入格式:
输入在一行中给出一个不超过10000的正整数N。
输出格式:
在一行中输出兔子总数达到N最少需要的月数。
输入样例:
30
输出样例:
9
【思路】
这题,看到生兔子就想到斐波那契数列。仔细看看,就是 1 1 2 3 5 8 … , 然后我就想用递归函数来写,直接查出,在哪个月份兔子对的数目最先大于或者等于 n。
【递归写的】
#include<stdio.h> // 斐波那契 int Fibonacci(int x) { if (x == 1 || x == 2) return 1; else return Fibonacci(x - 1) + Fibonacci(x - 2); } int main() { int n; scanf("%d", &n); // n对兔子 for (int i = 1;; i++) { if (Fibonacci(i) >= n) { printf("%d", i); break; } } return 0; }
【其他写法】
以后再来填
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- #######习题4-11 兔子繁衍问题 (15分)
- 习题4-11 兔子繁衍问题 (15 分)(递归算法)(数组算法)
- 习题4-11 兔子繁衍问题(15 分) 一对兔子,从出生后第3个月起每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子。
- 习题4-11 兔子繁衍问题 (15 分)
- 习题4-11 兔子繁衍问题 (15 分)
- 习题4-11 兔子繁衍问题 | 浙大版《C语言程序设计(第3版)》题目集
- 5-29 兔子繁衍问题 (15分)
- 【C语言-14】一维 数组大课堂第二讲~~~(古典数学问题"兔子繁衍"三种算法)
- 循环-05. 兔子繁衍问题(15)
- 7-27 兔子繁衍问题(15 分)
- 7-27 兔子繁衍问题(含重难点注释)—斐波拉契数列
- 兔子繁衍问题求解(阿里巴巴2017在线编程题)
- ###习题4-10 猴子吃桃问题 (15分)
- 循环-05. 兔子繁衍问题
- 循环-05. 兔子繁衍问题(15)
- 循环-05. 兔子繁衍问题
- 【程序11】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
- 习题11-2 查找星期 (15分)
- 7-27 兔子繁衍问题 (15 分)
- 斐波那契数列问题-兔子繁衍问题-c语言-c++-经典问题-编程