Skip to content

Latest commit

 

History

History
46 lines (33 loc) · 1.14 KB

_1046. Last Stone Weight.md

File metadata and controls

46 lines (33 loc) · 1.14 KB

All prompts are owned by LeetCode. To view the prompt, click the title link above.

Back to top


First completed : June 04, 2024

Last updated : July 01, 2024


Related Topics : Array, Heap (Priority Queue)

Acceptance Rate : 65.8 %


Solutions

Python

class Solution:
    def lastStoneWeight(self, stones: List[int]) -> int:
        stoneCount = len(stones)
        heapq._heapify_max(stones)

        while stoneCount > 1 :
            stoneOne = heapq._heappop_max(stones)
            stoneTwo = heapq._heappop_max(stones)
            result = abs(stoneOne - stoneTwo)

            if result == 0 :
                stoneCount -= 2
            else :
                stoneCount -= 1
                heapq.heappush(stones, result)
                heapq._heapify_max(stones)
        
        return 0 if len(stones) == 0 else stones[0]