• 1518. Water Bottles


    Given numBottles full water bottles, you can exchange numExchange empty water bottles for one full water bottle.

    The operation of drinking a full water bottle turns it into an empty bottle.

    Return the maximum number of water bottles you can drink.

    Example 1:

    Input: numBottles = 9, numExchange = 3
    Output: 13
    Explanation: You can exchange 3 empty bottles to get 1 full water bottle.
    Number of water bottles you can drink: 9 + 3 + 1 = 13.
    

    Example 2:

    Input: numBottles = 15, numExchange = 4
    Output: 19
    Explanation: You can exchange 4 empty bottles to get 1 full water bottle. 
    Number of water bottles you can drink: 15 + 3 + 1 = 19.
    

    Example 3:

    Input: numBottles = 5, numExchange = 5
    Output: 6
    

    Example 4:

    Input: numBottles = 2, numExchange = 3
    Output: 2
    

    Constraints:

    • 1 <= numBottles <= 100
    • 2 <= numExchange <= 100
    class Solution {
        private int res = 0;
        public int numWaterBottles(int numBottles, int numExchange) {
            int empty = 0;
            int lastempty = 0;
            while(numBottles != 0) {
                res += numBottles;
                empty = numBottles + lastempty;
                numBottles = empty / numExchange;
                lastempty = empty % numExchange;
            }
            return res;
        }
    }

    Three parts, numBottles is current drink, empty is all empty bottles include empty from last step, then update numBottles and lastempty.

  • 相关阅读:
    SonarQube
    Gerrit
    Jenkins
    Jenkins
    GitLab
    GitLab
    GitLab
    centos7配置国内yum源
    CentOS7 ping: unknown host www.baidu.com
    VirtualBox下安装CentOS7系统
  • 原文地址:https://www.cnblogs.com/wentiliangkaihua/p/13342239.html
Copyright © 2020-2023  润新知