避免每日太過鹹魚,一天搞定一道leetcode演算法題小區便利店正在**,用 numexchange 個空酒瓶可以兌換一瓶新酒。你購入了 numbottles 瓶酒。
如果喝掉了酒瓶中的酒,那麼酒瓶就會變成空的。
請你計算 最多 能喝到多少瓶酒。
示例 1:
輸入:numbottles =
9, numexchange =
3輸出:13
解釋:你可以用 3 個空酒瓶兌換 1 瓶酒。
所以最多能喝到 9+3
+1=13 瓶酒。
示例 2:
輸入:numbottles =
15, numexchange =
4輸出:19
解釋:你可以用 4 個空酒瓶兌換 1 瓶酒。
所以最多能喝到 15+3
+1=19 瓶酒。
示例 3:
輸入:numbottles =
5, numexchange =
5輸出:6
第一步,首先我們一定可以喝到 b 瓶酒,剩下 b 個空瓶。
第二步,接下來我們來考慮空瓶換酒,換完再喝,喝完再換的過程——每次換到一瓶酒就意味著多乙個空瓶,所以每次損失的瓶子的數量為 e - 1,我們要知道這個過程能得到多少瓶酒,即希望知道第乙個打破下面這個條件的 n 是多少:b−n*(e−1)≥*e
即我們要找到最小的 n 使得:b−n(e−1)
當然我們要特別注意這裡的前提條件是 b ≥e,試想如果 bclass
solution
}複雜度分析
--------------也希望大家給我點支援,謝謝各位大佬了!!!--------------
1518 換酒問題
小區便利店正在 用 numexchange 個空酒瓶可以兌換一瓶新酒。你購入了 numbottles 瓶酒。如果喝掉了酒瓶中的酒,那麼酒瓶就會變成空的。請你計算 最多 能喝到多少瓶酒。示例 1 輸入 numbottles 9,numexchange 3 輸出 13 解釋 你可以用 3 個空酒瓶兌換 ...
LeetCode 1518 換酒問題
小區便利店正在 用 numexchange 個空酒瓶可以兌換一瓶新酒。你購入了 numbottles 瓶酒。如果喝掉了酒瓶中的酒,那麼酒瓶就會變成空的。請你計算 最多 能喝到多少瓶酒。示例 1 輸入 numbottles 9,numexchange 3 輸出 13 解釋 你可以用 3 個空酒瓶兌換 ...
力扣Leetcode 1518 換酒問題
小區便利店正在 用 numexchange 個空酒瓶可以兌換一瓶新酒。你購入了 numbottles 瓶酒。如果喝掉了酒瓶中的酒,那麼酒瓶就會變成空的。請你計算 最多 能喝到多少瓶酒。示例 輸入 numbottles 9,numexchange 3 輸出 13 解釋 你可以用 3 個空酒瓶兌換 1 ...