문제를 이해하고 있다면 바로 풀이를 보면 됨
전체 코드로 바로 넘어가도 됨
마음대로 번역해서 오역이 있을 수 있음
물병 numsBottles는 처음에 물이 가득 차있다. 마켓에서 빈 물병을 물이 가득 찬 물병으로 교환할 수 있다.
물병에 가득 찬 물을 마시는 건 빈 병으로 만드는 것과 같다.
두 개의 정수 numBottles와 numExchange가 주어졌을 때, 물을 마실 수 있는 물병의 최대 개수를 반환해라.
#1
Input: numBottles = 9, numExchange = 3
Output: 13
Explanation: 3개의 빈병으로 1개의 가득찬 물병으로 바꿀 수 있다.
마실 수 있는 물병의 개수는 9 + 3 + 1 = 13이다.
#2
Input: numBottles = 15, numExchange = 4
Output: 19
Explanation: 4개의 빈병으로 1개의 가득찬 물병으로 바꿀 수 있다.
마실 수 있는 물병의 개수는 15 + 3 + 1 = 19이다.
class Solution {
public int numWaterBottles(int numBottles, int numExchange) {
return numBottles + (numBottles - 1) / (numExchange - 1);
}
}