«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Recent Posts
Tags more
Today
Total
관리 메뉴

내 인생은 개발 중

[프로그래머스] 더 맵게 본문

Algorithm/프로그래머스

[프로그래머스] 더 맵게

seul.e 2024. 7. 16. 15:37

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

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

import heapq
def solution(scoville, K):
    answer = 0
    heapq.heapify(scoville)

    while scoville[0] < K:
        if len(scoville) < 2:
            return -1
        a = heapq.heappop(scoville)
        b = heapq.heappop(scoville)
        scoville_scale = a + (b * 2)
        heapq.heappush(scoville, scoville_scale)
        answer += 1


    return answer

알게된 점

  • heapify 사용하면 기존의 리스트를 힙 자료형으로 바꿀 수 있다.
  • heappop()은 가장 작은 원소를 제거하는 동시에 그를 결괏값으로 리턴한다.
  • heap에서 가장 작은 원소를 삭제하지 않고 가져오고 싶으면 heap[0]을 사용하면 된다.
Comments