프로그래머스/LV2

[프로그래머스 Lv2,python]- 더 맵게

chyam_eun 2025. 1. 23. 22:52

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

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

import heapq
def solution(scoville, K):
    cnt=0 # 횟수
    heapq.heapify(scoville) # 리스트를 힙으로 만들기
    while(scoville[0]<K and len(scoville)>1): # 제일 작은 값이 K미만이고 힙 길이가 1보다 클때
        f=heapq.heappop(scoville) # 제일 작은 값 빼기
        q=heapq.heappop(scoville) # 두번째로 작은값 빼기
        heapq.heappush(scoville,f+q*2) # 두개 더한값 넣기
        cnt+=1 # 증가시키기 
    if min(scoville)<K: # 최소 값이 K보다 작다면 -1 리턴
        return -1
    return cnt