* 개수는 무수히 많고 범위가 정해져있는 경우 계수정렬을 이용하여 문제를 푼다
a = [0] * 10001
res = []
n = int(input())
for _ in range(n):
a[int(input())] += 1
for i in range(10001):
if a[i] == 0:
continue
for _ in range(a[i]):
print(i)
* 기존input() 함수를 사용하면 시간초과 에러가 발생한다
import sys
a = [0] * 10001
res = []
n = int(sys.stdin.readline())
for _ in range(n):
a[int(sys.stdin.readline())] += 1
for i in range(10001):
if a[i] == 0:
continue
for _ in range(a[i]):
print(i)
* 데이터의 개수가 많을 때 파이썬에서는 sys.stdin.readline()을 사용해야한다
'개발 > 알고리즘' 카테고리의 다른 글
[시간초과][백준] #1074 Z (0) | 2020.10.29 |
---|---|
[백준] #2747 피보나치 수 (0) | 2020.10.28 |
[백준] #11650 좌표 정렬하기 (0) | 2020.10.28 |
[백준] #10814 나이순 정렬 (0) | 2020.10.28 |
[백준] #1427 소트인사이트 (0) | 2020.10.28 |
댓글