猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。 第二天早上又将剩下的桃子吃掉一半,又多吃一个。以后每天早上都吃了前一天剩下的一半零一个。 到第N天早上想再吃时,见只剩下一个桃子了。求第一天共摘多少桃子。
题目来源:https://www.dotcpp.com/oj/problem1020.html
输入
N
输出
桃子总数
样例输入
10
样例输出
1534
根据题意,我们可以根据下图进行分析:
从而可以这个题就相当给出了一个数列的第一项,并且在知道对应的关系之后,求出第n项,所以这个对应的数列关系时a[n] = a[n - 1] * 2 + 2
。
对应的代码:
#include<stdio.h>
int main()
{
int i,sum = 1,n; //sum表示第一项,即n = 1时的值
scanf("%d",&n);
for(i = 2; i <= n; i++){
sum = sum * 2 + 2;
}
printf("%d",sum);
return 0;
}