猴子摘桃(Java版)

200 阅读1分钟

题目:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个,第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。

思路:每一天都会吃掉前一天的一半再多吃一个,那么前一天就是后面一天数量的二倍还多两个,注意是两个!

举例:
假设第一天有10个,那么当天会吃掉10/2+1 = 6个
那么第二天还剩4个 (4 * 2+2=10),这天会吃掉 4/2+1 = 3个
还剩 1个(1*2+2=4)

代码:

public class work101 {
    public static void main(String[] args) {
        int day = 1; // 天数,倒着数
        int thatDay = 1; //当天的
        int theDayBefore = 0; //前一天的
        while (day < 10) {
            theDayBefore = thatDay * 2 + 2;
            day++;
            thatDay = theDayBefore;
        }
        System.out.println("第一天有:" + theDayBefore + "个桃");

    }
}

运行结果:

第一天有:1534个桃

读完如果对你有帮助,感谢点赞支持!
如果你是电脑端,看见右下角的“一键三连”了吗,没错点它[哈哈]

在这里插入图片描述

加油!

共同努力!

Keafmd