728x90

나의 풀이
import heapq
def solution(scoville, K):
count = 0
heapq.heapify(scoville)
while scoville[0] < K:
try:
heapq.heappush(scoville, heapq.heappop(scoville) + 2 * heapq.heappop(scoville))
count += 1
except:
return -1
return count
인덱스를 활용한 풀이
from heapq import heapify, heappush, heappop
def solution(scoville, K):
heapify(scoville)
for i in range(1000000):
try:
heappush(scoville, heappop(scoville)+(heappop(scoville)*2))
if scoville[0] >= K: return i+1
except:
return -1반응형
'Coding Test > Programmers' 카테고리의 다른 글
| [프로그래머스/파이썬] 이중우선순위큐 (0) | 2022.06.03 |
|---|---|
| [프로그래머스/파이썬] 디스크 컨트롤러 (0) | 2022.06.03 |
| [프로그래머스/파이썬] 주식가격 (0) | 2022.06.03 |
| [프로그래머스/파이썬] 다리를 지나는 트럭 (0) | 2022.05.31 |
| [프로그래머스/MySQL] 중복 제거하기 (0) | 2022.05.31 |