用java猴子吃桃子问题,第一天吃掉所有桃子的一半多一个,第二天又吃掉剩下桃子的一

用java猴子吃桃子问题,第一天吃掉所有桃子的一半多一个,第二天又吃掉剩下桃子的一,第1张

猴子吃桃问题.猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个.第二天早上又将剩下的桃子吃掉一半,又多吃了一个.以后每天早上都吃了前一天剩下的一半零一个.到第十天早上在想吃时,就只剩一个桃子了.求第一天共摘了多少个桃子?

public class 猴子吃桃 {

static int total(int day){

if(day == 10){

return 1

}

else{

return (total(day+1)+1)*2

}

}

public static void main(String[] args)

{

System.out.println(total(1))

}

}

采取倒推法做:茄首

设第九天剩下n个,应该吃掉 (n/2)+1 则 n-(n/2)-1=1 解得 n=4 第九天剩下4个;

同理设第8天剩下n个,应该吃掉 (n/2)+1 则 n-(n/2)-1=4,解得 n=10 第八天剩下10个

以此类肆埋推 第七天剩下 (10+1)x2=22个,第六天剩裂纳蚂下 (22+1)x2=46个,第五天剩下(46+1)x2=94个,第四天剩下 (94+1)x2=190个,第三天剩下(190+1)x2=382

第2天剩下 (382+1)x2=766,

第一天有 (766+1)x2=1534个桃子.

猴子吃桃唯迹滑(java)

class 猴州段子吃桃{

public static void main(String[]args){

int sum=1

for (int i=9i>0 i-- )

{

sum=(sum+1)*2

}

System.out.print("指腊猴子吃桃的数目为:")

System.out.println(sum)

}

}

int count = 1

for(int i=2i<=10i++){

count=(count+1)*2}

System.out.println("猴子第一天一共摘码敏饥了"+count+"个迟返拿拆桃子")


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12556623.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存