import heapq as hq
def solution(scoville, K):
answer = 0
# 리스트를 힙으로 만들어준다
hq.heapify(scoville)
while len(scoville)>1:
# 모든 원소가 K보다 크면 끝. 그런데 first가 K보다 크기만 해도 break 하면 될 것 같다
if all(i>=K for i in scoville):
break
first=hq.heappop(scoville)
second=hq.heappop(scoville)
new=first+(second*2)
hq.heappush(scoville,new)
answer+=1
if scoville[0]<K:
return -1
return answer