Algorithm(Python)/BaekJoon
[백준 10989] 수 정렬하기3
류정식
2021. 1. 20. 10:49
0. 제목
- 백준 10989 수 정렬하기3
1. 문제
10989번: 수 정렬하기 3
첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다.
www.acmicpc.net
2. 풀이
- 일반 python의 sort함수는 nlogn의 복잡도여서 쓰면 오류가 난다.
- 계수정렬을 이용한다.
3. 코드
import sys
n=int(sys.stdin.readline())
array=[0]*1001
for i in range(n):
data=int(sys.stdin.readline())
array[data]+=1
for i in range(1001):
if array[i]!=0:
for j in range(array[i]):
print(i)
4. 깨달은 점