알고리즘/프로그래머스
[힙(Heap)] 더 맵게
래울
2021. 10. 2. 20:40
https://programmers.co.kr/learn/courses/30/lessons/42626?language=python3#
코딩테스트 연습 - 더 맵게
매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같
programmers.co.kr
heapq 를 사용하면 쉽게 해결가능하다.
import heapq
def solution(scoville, K):
answer = 0
heapq.heapify(scoville)
while scoville:
if scoville[0] < K:
answer += 1
if len(scoville)==1: return -1
heapq.heappush(scoville, heapq.heappop(scoville) + heapq.heappop(scoville)*2)
else:
return answer