程序11--兔子出生
来源:互联网 发布:linux安装rar解压 编辑:程序博客网 时间:2024/04/27 21:10
古典问题:
有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
解题思路分析:
假设第x个月有y(x)个兔子出生,那么当x=1时,y(1)=0,当x=2时,y(2)=0,每个月的兔子总数设为n(x)=1+y(1)+y(2)+y(3)+……+y(x) =1+0+0+1+……+n(x-2)=1+n(1)+……+n(x-2)
当x>=3时,第x个月出生的兔子等于第x-2个月的兔子总数,因为可以保证所有兔子都是发育成熟的。(第x-1个月的兔子相比第x-2个月增加的兔子,到第x个月还不能生小兔子)。所以,y(x)=n(x-2),例如y(3)=n(1)=1
n(1)=1,n(2)=1
第x个月的兔子总数等于第x-1个月的兔子总数,加上第x个月新出生的兔子y(x):
n(x)=n(x-1)+y(x)=n(x-1)+n(x-2)
代码:
def rabbit_born(x): n=[] if x==1: n.append(1) return n if x==2: n.extend([1,1]) return n n.extend([1,1]) for i in range(2,x): n.append(n[i-1]+n[i-2]) return n运行:
>>> n=rabbit_born(22)>>> n[1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, 17711]
阅读全文
0 0
- 程序11--兔子出生
- 兔子出生总数问题
- 【程序11】有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,问每个月的兔子总数为多少?
- 【程序11】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月 后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
- 兔子出生问题(20次)JAVA
- 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少? 程序分析: 兔子的规律为数列1,1,2,3,5,
- 程序1:题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
- 【程序1】 TestRabbit.java 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子, //假如兔子都不死,问每个月的兔子总数为多少?
- 【程序1】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子, 小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死, 问每个月的兔子对数为多少?
- 五十道编程题目01 兔子的出生
- 【js初学】javascript经典算法之有一对兔子,从出生3个月起每个月都出生一对兔子,小兔三个月以后出生一对兔子,假设兔子不死,一年后有多少兔子
- 计算出生的星期程序
- java-有一对兔子,从出生后第3个月起每个月都生一对兔子...
- 面试算法题:有一对兔子,从出生后第3个月起每个月都生一对兔子
- 【程序11】(古典问题)兔子生崽问题
- 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔
- JAVA编程之古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子
- 广州出生婴儿登记入户程序
- arcgis字段计算器实例
- mongo 无固定类型,php弱类型,加一起就是坑
- 简单易懂的自定义view
- Fragment相关源码解析一——FragmentManagerImpl和BackStackRecord
- Ubuntu下安装hbase
- 程序11--兔子出生
- git忽略提交文件.gitignore
- SQL Exists的使用
- 使用jdbcTemplate查询返回自定义对象集合
- 延展操作符和解构的简单实际应用
- 数据结构与算法之排序
- 解释型语言与编译型语言的区别
- react入门
- 【LeetCode题解】523. Continuous Subarray Sum