본문 바로가기
백준 알고리즘

파이썬) 백준 알고리즘 | 1927번 : 최소 힙

by 코딩새내기_ 2022. 2. 6.

https://www.acmicpc.net/problem/1927

 

1927번: 최소 힙

첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0

www.acmicpc.net

백준 1927 '최소 힙' 문제입니다.

heapq를 이용하면 간단하게 구현할 수 있습니다.

heapq 모듈은 이진트리 기반의 최소 힙 자료구조를 제공합니다.

그래서 heapq 모듈을 사용하면 최소값을 빠르고 간단하게 얻을 수 있는 장점이 있습니다.

import sys
import heapq
input = sys.stdin.readline
heap = []
N = int(input())
for i in range(N):
    a = int(input())
    if a == 0 :
        if len(heap) == 0:
            print(0)
        else:
            print(heapq.heappop(heap))
    else:
        heapq.heappush(heap, a)

댓글