최대 1 분 소요

사용 언어: Python3

문제

스크린샷 2023-05-01 오후 11 13 33

풀이

heapq는 기본적으로 최소힙으로 작동하기 때문에 push할 때 -를 붙여 push하면 최대힙으로 변형할 수 있다.

import heapq as hq # ✅ heapq는 기본적으로 "최소힙"으로 작동한다

lst = []
while True:
    n = int(input())
    if n == -1:
        break
    elif n == 0:
        if lst:
            print(-hq.heappop(lst)) # ✅ -를 곱한 값 출력
        else:
            print('-1')
    else:
        hq.heappush(lst, -n) # ✅ 부호를 반대로 바꿔서 push


💛 개인 공부 기록용 블로그입니다. 👻

맨 위로 이동하기