题目
猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。
第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。
问:到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少?
具体思路
采用逆向思维,已知当吃到第10天时剩余的桃子数量为1,
计算方法为 (桃子数量+1)*2
第___天 桃子数量
Day10 1
Day 9 4
Day 8 10
Day 7 22
Day 6 46
Day 5 94
Day 4 192
Day 3 382
Day 2 766
Day 1 1534
实现代码
public static void taozi(int count,int tao){
//猴子吃桃问题
//count表示到了第10天剩余tao为1
if (count>1){
count--;
tao = (tao+1)*2;
taozi(count,tao);
return;
}
else if (count==1){
System.out.println("第一天一共摘了"+tao+"个桃子");
}
}
public static void main(String[] args) {
System.out.println("猴子吃桃问题:");
taozi(10,1);
}
Java)猴子吃桃问题
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
下一篇:Java第四次作业
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
java解决if else过多的问题
java解决if else过多的问题
策略模式 工厂模式 ifelse 枚举