문제풀이/BOJ

[Python] BOJ/백준 10989번 수 정렬하기 3

서채리 2021. 7. 22. 04:12

[문제]

https://www.acmicpc.net/problem/10989

 

10989번: 수 정렬하기 3

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

www.acmicpc.net

 


[풀이]

간단하게 풀었더니 메모리 초과가 났다 ㅎㅎ

 

list 문제를 풀 때 메모리 제한이 있다면 미리 0으로 초기화 한 틀을 만들어 놓은 후 증감식으로 개수를 세는 것이 유리하다고 한다.

 


[코드]

import sys

if __name__ == '__main__':
    check = [0] * 10001
    for _ in range(int(sys.stdin.readline())):
        n = int(sys.stdin.readline())
        check[n] += 1

    for i in range(10001):
        if check[i] != 0:
            for _ in range(check[i]):
                print(i)