티스토리 뷰
programmers.co.kr/learn/courses/30/lessons/42626
import heapq
# 최소 힙 자료구조
h = [1, 2, 3]
heapq.heapify(h)
print(heapq.heappop(h)) # 1 - 최소값 반환
heapq.heappush(h, 0) # 입력 후 가장 작은 값이 앞에 오게 자동 정렬
print(heapq.heappop(h)) # 0 - 최소값 반환
import heapq
def solution(scoville, K):
cnt = 0
h = scoville
heapq.heapify(h)
while True:
tmp = heapq.heappop(h)
if tmp >= K:
break
if len(h) == 0:
return -1
tmp += (heapq.heappop(h)) * 2
heapq.heappush(h, tmp)
cnt += 1
return cnt
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
[Programmers] LV2. 순위 검색 (0) | 2021.05.13 |
---|---|
[Programmers] LV3. 보석쇼핑 (0) | 2021.05.06 |
프로그래머스 level 2 - 땅따먹기 (0) | 2020.11.18 |
프로그래머스 level 2 - 주식가격 (스택/큐) (0) | 2020.11.18 |
프로그래머스 level 3 - 네트워크 (DFS/BFS) (0) | 2020.09.16 |
댓글