honey_pot

[python] 더 맵게 본문

Spring

[python] 더 맵게

_tera_ 2021. 9. 17. 02:44

https://programmers.co.kr/learn/courses/30/lessons/42626

 

코딩테스트 연습 - 더 맵게

매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같

programmers.co.kr

 

from heapq import *

def solution(scoville, K):
    answer = 0
    heapify(scoville) 
    
    while scoville[0] < K and len(scoville) > 1:
        mi1 = heappop(scoville)
        mi2 = heappop(scoville)
        heappush(scoville, mi1 + mi2 * 2)
        answer += 1
    return answer if scoville[0] >= K else -1

heapq를 이용해 푸는 문제로

heapq는 heapify, heappop, heappush 메서드 사용 때마다 자동적으로 정렬을 수행한다.

항상 0 인덱스 자리에 가장 작은 수가 오게 되며, heappop() 수행시 가장 작은 수를 pop한다.

 

'Spring' 카테고리의 다른 글

[python] 기능개발  (0) 2021.09.17
Comments