当前位置: 代码迷 >> J2SE >> 古典有关问题:有一对兔子,从出生后第3个月起
  详细解决方案

古典有关问题:有一对兔子,从出生后第3个月起

热度:69   发布时间:2016-04-23 19:54:28.0
古典问题:有一对兔子,从出生后第3个月起
题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
1.程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21....
   斐波那契数列, Sn = Sn-1+Sn-2

网上看的都是说 兔子的规律为数列1,1,2,3,5,8,13,21....

不是说有一对兔子么,怎么会这么算?
------解决思路----------------------
1,1,2,3,5,8,13,21

第1个月,1对兔子
第2个月,1对兔子
第3个月,生了1对兔子,所以是2对兔子
第4个月,最初的那一对兔子又生了一对兔子,所以是3对兔子
第5个月,3月生的那对兔子和最初的那对兔子各生了一对兔子,所以是5对兔子
...
这有什么问题吗?
------解决思路----------------------
第n-2的兔子和第n-2个月出生的兔子都会在第n月都会生出一对兔子,
第n个月的兔子对数=第n-2个月的兔子对数*2+第n-2个月出生的兔子对数
第n-2个月的出生的兔子对数=第n-1个月的兔子对数-第n-2个月的兔子对数
所以:第n个月的兔子对数=第n-1个月的兔子对数+第n-2个月的兔子对数
------解决思路----------------------
这个跟那个“农场小母牛”类似,只不过这里需要一公一母才能生宝宝!
  相关解决方案