파비의 매일매일 공부기록

Today's Challenge 본문

Problem Solving/LeetCode

Today's Challenge

fabichoi 2022. 9. 12. 23:45

https://leetcode.com/problems/bag-of-tokens

 

Bag of Tokens - LeetCode

Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.

leetcode.com

탐욕법으로 풀면 됨.

class Solution:
    def bagOfTokensScore(self, tokens: List[int], power: int) -> int:
        tokens.sort()
        deq = collections.deque(tokens)
        ans, bns = 0, 0
        
        while deq and (power >= deq[0] or bns):
            while deq and power >= deq[0]:
                power -= deq.popleft()
                bns += 1
            ans = max(ans, bns)
            
            if deq and bns:
                power += deq.pop()
                bns -= 1
                
        return ans
반응형

'Problem Solving > LeetCode' 카테고리의 다른 글

Today's Challenge  (2) 2022.09.14
Today's Challenge  (0) 2022.09.13
Today's Challenge  (0) 2022.09.11
Today's Challenge  (0) 2022.09.10
Today's Challenge  (0) 2022.09.09
Comments