【程序17】
题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下 的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
package com.share.test11_20;
/**
* 【程序17】题目:<br>
* 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个<br>
* 第二天早上又将剩下的桃子吃掉一半,又多吃了一个。<br>
* 以后每天早上都吃了前一天剩下的一半零一个。<br>
* 到第10天早上想再吃时,见只剩下一个桃子了。<br>
* 求第一天共摘了多少。
*
* @author brx
*/
public class Test17 {
public static void main(String[] args) {
test1();
}
/**
* 思路:<br>
* x=x/2-1,循环9次,后结果为1,反向递归问题,<br>
* 其实还是递归问题,最重要的是要算清楚次数<br>
* 1,(1+1)*2
*/
public static int test(int n) {
int result = 1;
if (n > 1) {
result = (test(n - 1) + 1) * 2;
}
return result;
}
public static void test1() {
System.out.println("第一天共摘了:" + test(9) + " 个桃子");
}
}