猴子喫桃問題。猴子第一天摘下若干個桃子,當即吃了一半,還不過癮,又多吃了一個。第2天早上又將剩下的桃子喫掉一半,又多吃了一個。以後每天早上都吃了前一天剩下的一半零一個。到第10天早上再想再喫時,就只剩一個桃子了。求第1天共摘多少個桃子。
分析:每一天喫掉前一天的一半+1個,由此得到當天桃子數+1的兩倍是前一天剩餘桃子的個數。
天數 | 剩餘個數 |
---|---|
第十天 | 1個 |
第九天 | (1+1)*2->4個 |
第八天 | (4+1)*2->10個 |
第七天 | (10+1)*2->22個 |
第…天 | …個 |
#include <iostream>
//猴子喫桃子
int Peach()
{
int sum =1;
for(int i=10;i>1;i--)
{
sum =(sum+1)*2;
}
return sum;
}
int main()
{
printf("%d\n",Peach());
}
輸出結果:1534
源代碼:
#include
//猴子喫桃子
int Peach()
{
int sum =1;
for(int i=10;i>1;i–)
{
sum =(sum+1)*2;
}
return sum;
}
int main()
{
printf("%d\n",Peach());
}