-코드
import heapq
from sys import stdin
heap = []
for _ in range(int(stdin.readline())):
n = int(stdin.readline())
if n == 0:
if len(heap) == 0:
print(0)
else:
print(heapq.heappop(heap)[1])
else:
if n > 0:
heapq.heappush(heap, [n, n])
else:
heapq.heappush(heap, [-n, n])
처음에 최솟값 힙이랑 비슷하게 짜고 다시 봤더니 절댓값이어서 구분을 어떻게 하나 고민을 하다가 결국 해결되지 않아 찾아본 결과 그냥 리스트로 음수 양수로 받아들여서 출력을 하면 되는 것을 알게 되고 해결을 하였습니다.
'Beakjoon&프로그래머스 > 파이썬' 카테고리의 다른 글
[백준/파이썬] 18870번 좌표 압축 (0) | 2022.01.21 |
---|---|
[백준/파이썬] 24309번 РАВЕНСТВО (0) | 2022.01.21 |
[백준/파이썬] 15751번 Teleportation (0) | 2022.01.20 |
[백준/파이썬] 24218번 Double Crypt 1 (0) | 2022.01.20 |
[백준/파이썬] 1074번 Z (0) | 2022.01.19 |