def solution(scoville, K):
count = 0
target = 0
scoville.sort()
# print(scoville)
count = 0
while len(scoville) >= 2 and min(scoville) <= K:
count += 1
scoville.append(scoville.pop(0)+scoville.pop(0)*2)
scoville.sort()
if min(scoville) < K:
return -1
else:
return count
import heapq
def solution(scoville, K):
count = 0
target = 0
heap = []
for i in scoville:
heapq.heappush(heap,i)
count = 0
while len(heap) >= 2 and heap[0] <= K:
count += 1
heapq.heappush(heap, (heapq.heappop(heap) + heapq.heappop(heap) * 2))
if heapq.heappop(heap) < K:
return -1
else:
return count