首页 > 其他分享 >换酒问题

换酒问题

时间:2022-09-03 00:11:44浏览次数:37  
标签:bottle int 问题 num numExchange 换酒 喝完 一瓶

换酒问题

一、题目描述

由numBottles瓶酒,可以用numExchange个空酒瓶换一个新酒。问最多可以喝多少瓶酒?

二、题目分析

这里空酒瓶包括新换的酒喝完的酒瓶。就是原来总酒瓶numbootles需要加上新换的酒喝完的酒瓶。

三、解题思路

方法1
一次性喝完一次性兑换。创建一个变量num来记录喝过酒的瓶数,初始化为numbootles;然后算出新换的酒newbootles。用numbootles/numexchange,即可。给num加上newbootles。再计算当前的空瓶子数。numbootles = newbootles + numbootles%numexchange,就是新换的酒瓶,再加上上次剩的酒瓶。
代码实现

public int numWaterBottles(int numBottles, int numExchange) {
    
    int num = numBoottles;
    while(numBoottles >= numExchange){
      
        int newBoottle = numBoottles/numExchange;
        numBootles = newBottles+(numBottles%numExchange);
        num = num + newBottles;
    }
    return num;

}

方法2
第一次喝完后,每换一瓶喝一瓶,再换新的一瓶。每次从第一个瓶子里减去交换的瓶子,再加上新喝完的瓶子。实际就是只用3个瓶子换一瓶酒。但是需要换一瓶喝一瓶。
代码实现

int bottle = numBottles;
        int ans = numBottles;

        while(bottle >= numExchange){
            bottle -= numExchange;
            ans++;
            bottle++;
        }

        return ans;

标签:bottle,int,问题,num,numExchange,换酒,喝完,一瓶
From: https://www.cnblogs.com/zjjtt/p/16651750.html

相关文章

  • 记一次被非托管代码支配的恐惧「C#对接企微会话存档SDK问题修复」
    序这个问题是我目前在做企微服务商开发以来周期最长、最折磨人的一个问题了;从3月开始着手排查问题(其实在开发之初就发现了该问题,迫于进度,就暂时搁置了),其中断断续续去尝试......
  • 分库分表问题
    数据库可以通过主从复制将数据复制多份实现读写分离,读走从库,写走主库,应对量并发读的能力,同时提⾼数据安全性。但是对于单个表,还存在很多问题,比如:单表记录过多,字段加上索......
  • 线上问题如何复盘?
    昨天知识星球社群里有同学问了一个问题:线上问题如何复盘?从流程、分析和后续措施落地有哪些好的建议?从质量保障的角度来说,针对线上问题进行复盘可以发现工作中的不足并持......
  • libssh2_sftp_rename失败问题
    最近遇到一个问题,使用libssh2_sftp上传文件时,传输的文件命名文xxx.xx.temp,上传完成后需要把temp后缀去掉。libssh2提供了一个接口libssh2_sftp_rename用于重命名远端文件......
  • Linux下利用backtrace定位问题函数
    最近遇到一个问题,程序莫名其妙崩溃,由于系统设置并没有生成core文件,因此也就不能通过gdb调试来查看出错时的调用栈信息。好在系统生成了crash.log文件,里面的backtrace信息可......
  • 1.4.2(3) 用空间向量研究距离问题
    \({\color{Red}{欢迎到学科网下载资料学习}}\)【基础过关系列】2022-2023学年高二数学上学期同步知识点剖析精品讲义(人教A版2019)\({\color{Red}{跟贵哥学数学,so\qua......
  • C++迷宫问题求解(用队列实现)
    C++迷宫问题求解(用队列实现)19、迷宫问题求解(用队列实现)【任务】以一个m*n的长方阵表示迷宫。0和1分别表示迷宫中的通路和障碍。解迷宫通常用的是“穷举求解”方法,即从入......
  • SQL中的排座位问题
    排座位问题的思路表:Seat+-------------+---------------------+|ColumnName|Type|+-------------+---------------------+|id |int |......
  • Spring Boot 面试,一个问题就干趴下了!
    最近有很多人面试,其中不乏说对SpringBoot非常熟悉的,然后当我问到一些SpringBoot核心功能和原理的时候,没人能说得上来,或者说不到点上,可以说一个问题就问趴下了!......
  • 「题解」Longge 的问题
    原题目链接:Link。虽然已经被A穿了但还是写一下。\[\sum_{i=1}^n\gcd(i,n)=\sum_{d\vertn}\sum_{i=1}^n[\gcd(i,n)=d]\]这一步显然,因为\(\forall\gc......