ocrosoft 程序设计提高期末复习问题M 递归求猴子吃桃
Posted zlrrrr
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ocrosoft 程序设计提高期末复习问题M 递归求猴子吃桃相关的知识,希望对你有一定的参考价值。
http://acm.ocrosoft.com/problem.php?cid=1172&pid=12
题目描述
猴子吃桃问题。猴子第1天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第2天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半另加一个。到第n天早上想再吃时,就只剩下一个桃子了。求第1天共摘了多少个桃子
输入
n的值
输出
剩下的桃子数量
样例输入
10
样例输出
total=1534
题解:
运用递归的思想,定义的A的函数代表的是第n天开始的时候所有的桃子,x的值从1开始到n结束。
代码:
#include <bits/stdc++.h> using namespace std; int n; int A(int x) { if(x == n) return 1; return 2*(A(x + 1) + 1); } int main() { while(cin>>n) { printf("total=%d ",A(1)); } return 0; }
以上是关于ocrosoft 程序设计提高期末复习问题M 递归求猴子吃桃的主要内容,如果未能解决你的问题,请参考以下文章
ocrosoft Contest1316 - 信奥编程之路~~~~~第三关 问题 M: 当总统