2075. N번째 큰 수

sen·2021년 7월 25일
0

BOJ

목록 보기
11/38
post-thumbnail

문제

백준 2075번 N번째 큰 수


풀이

보자마자 '응? 골드5 치고는 너무 쉬운데?' 라고 생각하고
냅다 정렬해서 제출했는데 난데없이 메모리 초과;; 이건 처음 받아본다.

문제보니까 메모리가 12MB로 제한되었다. 어쩐지..

최소힙으로 구현하면 편하다.
힙의 길이가 n을 유지하도록 while문을 통해 pop하면(계속 작은 값이 pop된다) 최종적으로 루트노드에 n번째 큰 값이 오게 되기 때문이다.

import heapq

n = int(input())
a = []
for _ in range(n):
    for x in list(map(int, input().split())):
        heapq.heappush(a, x)
    while len(a) > n: 
        heapq.heappop(a)
print(a[0])
profile
공부 아카이브

0개의 댓글