728x90
📌문제 출처
백준 단계별 문제풀이 - 우선순위 큐
https://www.acmicpc.net/problem/11279
❓ 문제
❗ 풀이
- heap 자료 구조 활용
📗 풀이 코드
import sys
from heapq import heappush, heappop
input = sys.stdin.readline
nums = []
for _ in range(int(input())):
i = int(input())
if i :
heappush(nums,-i)
else :
if not nums:
print(0)
else :
print(-heappop(nums))
📗 코드 해설
- heappush로 nums라는 list를 힙구조로 변경하며 원소를 추가한다.
- 이때 음수값 형태로 넣어서 heappop시 절대값이 가장 큰 원소가 나오도록 한다.
- heappop으로 출력한 최대값에 -부호를 붙여 원래의 수를 출력한다.
'파이썬 문제풀이' 카테고리의 다른 글
[백준 파이썬] 11286 절댓값 힙 (0) | 2023.08.21 |
---|---|
[백준 파이썬] 1927 최소 힙 (0) | 2023.08.21 |
[백준 파이썬] 1920 수 찾기 (0) | 2023.08.10 |
[백준 파이썬] 10830 행렬 제곱 (0) | 2023.08.10 |
[백준 파이썬] 2740 행렬 곱셈 (0) | 2023.08.07 |