본문 바로가기
알고리즘

[python] 백준 11279번 - 최대 힙

by 이재현9999 2024. 8. 11.

최대 힙을 구현하는 문제.

 

import sys
import heapq
input = sys.stdin.readline

N = int(input())
heap = []
for _ in range(N):
    x = int(input())
    if x == 0:
        if len(heap) > 0:
            print(-heapq.heappop(heap))
        else:
            print(0)
    else:
        heapq.heappush(heap, -x)

heapq 모듈을 사용하면 힙 자료구조를 간편하게 사용할 수 있지만,

최소 힙밖에 제공되지 않는다.

 

따라서 최대 힙을 구현하기 위해서는 원소를 저장할 때 마이너스 부호를 붙여

간단하게 최대 힙을 구현할 수 있다.