🐸 문제 정보
🤖 알고리즘
우선순위 큐
⏱️ 풀이 시간
22.33m
📝 풀이
구현처럼 풀다가 실패해서 검색으로 아이디어를 얻었다.
우선순위 큐로 푸는 문제였고, n*n이기 때문에 큐의 범위를 n만큼 유지한다면 마지막 줄까지 돌았을 때 0번째에 위치한 원소가 n번째 큰 수가 되었다.
오늘은 집중이 잘 안되는 날이다ㄷㄷ
🧑💻 나의 답
# pypy3
import sys, heapq
input = sys.stdin.readline
n = int(input().rstrip())
q = []
for _ in range(n):
nums = list(map(int, input().rstrip().split()))
for num in nums:
if len(q) < n:
heapq.heappush(q, num)
else:
if q[0] < num:
heapq.heappop(q)
heapq.heappush(q, num)
print(q[0])
'PS > 문제풀이' 카테고리의 다른 글
백준 1806 부분합 Python (2) | 2024.01.28 |
---|---|
백준 1138 한 줄로 서기 Python (1) | 2024.01.28 |
백준 2138 전구와 스위치 Python (1) | 2024.01.26 |
백준 2304 창고 다각형 Python (0) | 2024.01.26 |
백준 15989 1, 2, 3 더하기 4 Python (0) | 2024.01.24 |