BOJ

백준 10989. 수 정렬하기 3 [Python]

Hoo_Dev 2022. 4. 7. 14:50
 

10989번: 수 정렬하기 3

첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다.

www.acmicpc.net

import sys
N = int(sys.stdin.readline())
lst = [0] * (10000+1)
for _ in range(N):
    i = int(sys.stdin.readline())
    lst[i] += 1

for i in range(1, 10000+1):
    for j in range(lst[i]):
        print(i)

메모리 초과로 인해 리스트에 저장 후 sort를 쓰면 메모리 초과가 나온다.

input을 sys를 통해 받고, 카운팅 정렬을 통해 출력

'BOJ' 카테고리의 다른 글

백준 10164. 격자상의 경로 [Python]  (0) 2022.04.16
백준 2615. 오목 [Python]  (0) 2022.04.13
백준 1931. 회의실 배정 [Python]  (0) 2022.03.31
백준 2309. 일곱 난쟁이 [Python]  (0) 2022.03.29
백준 2798. 블랙잭 [Python]  (0) 2022.03.29