Java 之 猴子吃桃
猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下 的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
1.程序分析:采取逆向思维的方法,从后往前推断。
编程实现:
public class PeachProblem{
public static void main(String []args){
int day = 10;
int count = 1; //第十天剩下的peach
for(int i=1; i<day; i++){
count = count*2+2; //正推
}
System.out.println("The total of peach is:"+count);
for(int i=1; i<day; i++){
count = count/2-1; //反推
System.out.println("第"+i+"天剩下peach个数:"+count);
}
}
}