使用【python】写假设有一对新生的兔子,从第三个月开始他们每个月月初都生一对兔子,新生的兔子从第三个月月初开始又每个月又生一对兔子。按此规律,并假定兔子没有死亡,n(n<=20)个月月末共有多少对兔子?的代码
时间: 2024-11-05 11:12:00 浏览: 15
python 计算每个月的兔子总数为多少?(示例)
这是一个经典的动态规划问题,可以使用Python的循环结构来解决。我们可以创建一个二维数组`rabbit_pairs`来存储每个月末的兔子总数。
```python
def rabbit_population(month, pairs=1): # 初始月份数量为1对兔子
if month <= 0:
return 0
elif month == 1:
return pairs # 第一个月结束时有原对数兔子
else:
return rabbit_population(month - 1, pairs) + pairs # 每个月初新增一对兔子
def total_rabbits(n):
return sum(rabbit_population(month) for month in range(1, n+1))
n_months = int(input("请输入月份(不超过20): "))
rabbits_count = total_rabbits(n_months)
print(f"第{n_months}个月月末共有 {rabbits_count} 对兔子.")
阅读全文