Written by
최태열
on
on
[Python][프로그래머스][Level2] 더 맵게
[Python][프로그래머스][Level2] 더 맵게
코드
import heapq
def solution(scoville, K):
answer=0
heapq.heapify(scoville)
while scoville[0]<K:
if len(scoville)<2:
return -1
spicy1=heapq.heappop(scoville)
spicy2=heapq.heappop(scoville)
heapq.heappush(scoville,spicy1+spicy2*2)
answer+=1
return answer
힙을 활용해 풀었다.
가장 스코빌 지수가 작은 2개를 가져와서 더해준 다음에 다시 집어 넣었다.
가장 작은 스코빌 지수가 K보다 크거나 같으면 종료되고
스코빌 지수를 가진 음식이 한 개가 남으면 불가능한 상황이라 -1을 반환한다.
Discussion and feedback