문제 분석
- 최소 힙 구현
코드 설계
- n 만큼의 수를 받으면서
- n == 0 일 때
- 배열에 값이 있다면 → 배열에서 가장 작은 값 출력 및 배열에서 값 제거
- 배열에 값이 없다면 →
- n == '자연수' : 배열에 값 추가
정답 코드
import sys
input = sys.stdin.readline
import heapq as hq
n = int(input())
heap = []
for _ in range(n) :
x = int(input())
# x가 0이라면
if x == 0 :
# 배열이 비어있지 않으면 가장 작은 값 출력
if heap :
print(hq.heappop(heap))
else :
print(0)
elif x > 0 and int(x) == x: # x가 자연수라면
hq.heappush(heap, x)
'코딩 테스트 > 백준' 카테고리의 다른 글
[Python] 백준 1715 카드 정렬하기 (0) | 2025.02.20 |
---|---|
[Python] 백준 11286 절댓값 힙 (0) | 2025.02.20 |
[Python] 백준 2839 설탕 배달 (0) | 2025.02.20 |
[Python] 백준 2178 미로 탐색 (0) | 2025.02.19 |
[Python] 백준 2580 스도쿠 (0) | 2025.02.18 |