https://leetcode.com/problems/remove-stones-to-minimize-the-total/ 


class Solution:

def minStoneSum(self, piles: List[int], k: int) -> int:
pq = [-x for x in piles]
heapify(pq)
for i in range(k):
x = -heappop(pq)
heappush(pq, -((x+1)//2))

return -sum(pq)


최대힙 쓸 줄 알면 쉬움

파이썬 힙은 최소힙이므로 음수로 넣고 빼고 계산할 때 고려해주기