猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
/**
* @author User wxxu
* @description: 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个
* 第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。
* 到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
* @create 2018/5/17 22:31
*/
public class EatPeach {
/**
* @author wxxu
* @descriation 递归方法
* @param n 第n天
* @return
* @date 2018/5/17 22:41
*/
public static int getPeach1(int n){
if(n<1){
return 0;
}
if(n==10){
return 1;
}
return 2*(getPeach1(n+1)+1);
}
/**
* 非递归方法
*/
public static void getPeach2(){
int day = 9;
int peach = 1;
int cur = 0;
while(day>0){
cur=2*(peach+1);
peach =cur;
day--;
}
System.out.println(peach);
}
public static void main(String[] args){
System.out.println(getPeach1(1));
getPeach2();
}
}