猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。 第二天早上又将剩下的桃子吃掉一半,又多吃一个。以后每天早上都吃了前一天剩下的一半零一个。 到第N天早上想再吃时,见只剩下一个桃子了。求第一天共摘多少桃子。C++
时间: 2023-07-16 14:11:30 浏览: 368
猴子吃桃问题C程序
考虑逆推,假设第N天早上有x个桃子,那么第N-1天晚上就有2x+2个桃子,第N-2天晚上就有4x+6个桃子,以此类推,第一天晚上就有2^(N-1)x + 2^(N-1) - 2个桃子。因为第一天晚上有桃子,所以2^(N-1)x + 2^(N-1) - 2 > 0,解得x > 2^(N-1) - 1。所以第一天至少要摘下2^(N-1)个桃子才能满足条件。
以下是C++实现:
阅读全文