N번째 큰 수

Polla·2023년 5월 1일

백준BOJ

목록 보기
3/4
post-thumbnail

백준 실버2 N번째 큰 수 파이썬



💡 문제

첫째 줄에 N번째 큰 수를 출력한다.


🥳 해결!


생각

1. sort()
2. 우선순위큐

이 문제는 푸냐 마냐의 문제보다는, 공간 복잡도의 문제였던 것 같다.
간단하게 sort()를 사용해도 O(nlogn)으로 되지만 그렇게 할 경우
메모리에 문제가 생기게 된다.


코드


n = int(input())
nums = [] # 가상의 리스트 생성
for i in range(n):
    nums += list(map(int,input().split())) # 리스트 형식으로 받아 저장
    nums.sort(reverse=True) # sort() 큰 숫자부터 와야해서 reverse
    nums = nums[:n] # n 크기 만큼 자르기
print(nums[-1]) # n번째 수

문제 요구사항은 heapq를 노린것 같지만... 나는 한줄씩 받아,
n만큼의 크기를 유지하는 방법으로 풀었다.
당연히 n번째 수는 nums[-1]


profile
트러블 슈팅 Blog => https://polla.palms.blog/home

0개의 댓글