[백준] 2075번 N번째 큰 수

거북이·2023년 1월 27일
0

백준[실버2]

목록 보기
31/81
post-thumbnail

📌 최대힙으로 코드를 작성해볼것

💡문제접근

  • 알고리즘 분류를 보고 해당 문제를 heapq을 이용해서 접근했다.
  • heappushheappop를 이용해서 작성했는데 메모리초과가 나와서 결국 다른 방법으로 heapq.nlargest를 이용해서 N번째 큰 수를 출력하는 방법의 코드를 작성했다.
  • 최대힙, 최소힙도 문제를 푸는데 자주 사용된다. 까먹지말고 구현하는 방법은 익혀두도록 하자.

💡코드(메모리 : 33004KB, 시간 : 3088ms)

import heapq
import sys
input = sys.stdin.readline

N = int(input().strip())
heap = []
for _ in range(N):
    arr = list(map(int, input().strip().split()))
    for i in arr:
        heapq.heappush(heap, i)
    heap = heapq.nlargest(N, heap)
print(heap[-1])

💡소요시간 : 10m

0개의 댓글