1020 - C语言程序设计教程(第三版)课后习题6.10
时间限制:1秒
内存限制:128兆
题目描述
猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。
第二天早上又将剩下的桃子吃掉一半,又多吃一个。以后每天早上都吃了前一天剩下的一半零一个。
到第N天早上想再吃时,见只剩下一个桃子了。求第一天共摘多少桃子。
输入
N
输出
桃子总数
样例输入
10
样例输出
1534
一道逆推的数学题,因为在经过了N天之后,剩余的桃子只有一个,
而每天吃了一半多一个所以,进行一个for循环来倒着推回去,即可
求出答案
#include<stdio.h>
int main()
{
int n, i, a;
a=1;
scanf("%d",&n);
for(i=n;i>1;i--) //从第N天开始推到第一天的量
a=(a+1)*2; //将每一次吃的桃子还回来
printf("%d",a);
return 0;
}