兔子繁殖问题:第一个月兔子数量为2对,到第四个月开始繁殖,即有4对,整个过程中无兔子死亡,问在第n个月有多少只兔子?
设a、b、c、d为四个状态,a为新生兔子数量,b为新生兔子成长的一个月之后的数量,b为新生兔子成长的两个月之后的数量,c为新生兔子成长的三个月之后的数量,d为新生兔子成长的四个月之后的数量。
设S为当前月份总数量。
月份 | a | b | c | d | S |
1 | 2 | 2 | |||
2 | 2 | 2 | |||
3 | 2 | 2 | |||
4 | 2 | 2 | 4 | ||
5 | 2 | 2 | 2 | 6 | |
6 | 2 | 2 | 2 | 2 | 8 |
7 | 4 | 2 | 2 | 4 | 12 |
8 | 6 | 4 | 2 | 6 | 18 |
9 | 8 | 6 | 4 | 8 | 26 |
10 | 12 | 8 | 6 | 12 | 38 |
设为第n个月的兔子总数量。
由上表可以得到:
即第n个月的总数量减第n-1月总数量等于第n个月新生兔子的数量,也等于第n-1月
(成长的三个月之后的数量)与
(成长的四个月之后的数量)之和,也等于第n-3个月数量总和。
将上式整理可得,其中n
4。
可以发现,n 4的情况可以直接算出来作为已知条件;
中的3为成长所需的月份,即三个月,由这个例子应该能得出初始值不为一对兔子,且月份不是到第三个月繁殖的情况的算法。