题目
{% raw %}
{% endraw %}
猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个
第二天早上又将剩下的桃子吃掉一半,又多吃了一个。
以后每天早上都吃了前一天剩下的一半零一个。
到第n天早上想再吃时,见只剩下一个桃子了。
求第一天共摘了多少。
{% raw %}
{% endraw %}
行1:一个整数n,n∈[2,20]
{% raw %}
{% endraw %}
行1:一个整数,代表第一天桃子的总数
{% raw %}
{% endraw %}
10
{% raw %}
{% endraw %}
1534
{% raw %}
题解
小学数学题,不用考虑高精度计算,单纯 int 就足够了
代码
```cpp 猴子摘桃 https://github.com/OhYee/sourcecode/tree/master/ACM 代码备份
/*/
#define debug
#include
//*/
#include
#include
#include
using namespace std;
int main(){
#ifdef debug
freopen("in.txt", "r", stdin);
int START = clock();
#endif
cin.tie(0);
cin.sync_with_stdio(false);
int n;
while(cin>>n){
int ans = 1;
for(int i=0;i<n-1;i++){
ans += 1;
ans *= 2;
}
cout << ans << endl;
}
#ifdef debug
printf("Time:%.3fs.\n", double(clock() - START) / CLOCKS_PER_SEC);
#endif
return 0;
}
</div>