[Leetcode] 3100. Water Bottles II

RexiaN·2025년 10월 2일
0

특정 개수의 빈 물병을 모아가면 새 물병을 줄 때, 새 물병을 여러개 주고서 물을 총 몇 병 마실 수 있는지 물어보는 문제. 물이 든 병은 받자마자 마셔버린다고 가정하고 새 물병으로의 교환이 불가능해질까지 반복을 돌면 된다.

function maxBottlesDrunk(numBottles: number, numExchange: number): number {
    let totalCount = numBottles
    let emptyBottles = numBottles
    let exchangeCount = numExchange

    while(emptyBottles >= exchangeCount) {
        emptyBottles = emptyBottles - exchangeCount + 1
        totalCount += 1
        exchangeCount += 1
    }

    return totalCount
};

시간복잡도나 예외처리도 딱히 어렵지 않아 손쉽게 클리어.

profile
Don't forget Rule No.1

0개의 댓글