백준 2075 n번째 큰 수

gmlwlswldbs·2022년 1월 16일
0

코딩테스트

목록 보기
116/130
import heapq
import sys
input = sys.stdin.readline

n = int(input())
l = [list(map(int, input().split())) for _ in range(n)]
q = []
for i in range(n):
    for j in range(n):
        heapq.heappush(q, -l[i][j])
t = 1
while t < n:
    heapq.heappop(q)
    t += 1
print(-q[0])

처음에 메모리 제한 안보고 그냥 냅다 풀어서 틀렸다.
힙의 길이를 고정시켜주기로 함

import heapq
import sys
input = sys.stdin.readline

n = int(input())
q = []
for _ in range(n):
    tmp = list(map(int, input().split()))
    for i in tmp:
        if len(q) == n:
            if q[0] < i:
                heapq.heappop(q)
                heapq.heappush(q, i)
        else:
            heapq.heappush(q, i)
print(q[0])

0개의 댓글