【算法java版12】:猴子吃桃问题


1、题目描述

▶️ 有一只猴子,摘了很多桃子,它每天吃掉一些,剩下的桃子比之前的全部的一半少一个。它吃了十天才吃完请问它一共摘了多少个桃子?

2、解题思路

  • 由于猴子第十天才吃完所有的桃子,所以第十一天桃子数量必然为0,定义变量 endCount ,赋值为0,来记录第十一天桃子数量
  • 我们采用逆向思维,即从最后一天向第一天算起,定义 天数 day = 11
  • 根据题目我们可以得到,前一天的桃子数量 = 2 * 当前的桃子数量 + 2

3、示例代码

package com.wk.java;

import org.junit.Test;

/**
 * @ClassName EatPeaches
 * @Description 猴子吃桃子问题
 * @Author wk
 * @Date 2022/6/4 19:53
 * @Version 1.0
 */
public class EatPeaches {

    @Test
    public void test(){
        // 第十一天桃子的数量必定为0
        int endCount = 0;
        // 桃子的总数量
        int count = 0;
        // 记录天数
        int day = 11;
        while(day > 0){
            day--;
            count = (2 * endCount + 2);
            endCount = count;
        }
        System.out.println("桃子的总数量为:" + count);
    }

}

4、测评结果

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

☆*往事随風*☆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值