一只小猴子一天摘了许多桃子,第一天吃了一半,然后忍不住多吃了一个。第二天又吃了一半,再加上一个;后面每天都是这样吃.到第10天的时候,小猴子发现只有一个桃子了。 问小猴子第一天共摘了多少个桃子? 用递归函数求得小猴子第一天共摘了多少个桃子
时间: 2024-05-08 15:22:22 浏览: 36
python 猴子吃桃问题,求第一天共摘了多少?(示例)
根据题意,可以列出递推式:
第10天的桃子数 = 1
第9天的桃子数 = (第10天的桃子数 + 1) * 2 = 4
第8天的桃子数 = (第9天的桃子数 + 1) * 2 = 10
...
第1天的桃子数 = (第2天的桃子数 + 1) * 2
可以发现,这是一个递归的过程。因此,可以写出以下递归函数:
```python
def peach_count(day):
if day == 10:
return 1
return (peach_count(day+1) + 1) * 2
```
调用 `peach_count(1)` 即可得到答案,小猴子第一天共摘了 1534 个桃子。
阅读全文