Recent Posts
Recent Comments
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Today
Total
관리 메뉴

100세까지 코딩

[백준] 10989번 수 정렬하기3 (파이썬) 본문

코딩테스트/파이썬

[백준] 10989번 수 정렬하기3 (파이썬)

100세까지 코딩 2024. 1. 27. 12:10
문제

나의 생각
  • list를 생성하여 append()로 하나씩 추가한다.
  • list.sort()를 사용하여 정렬한다.
나의 풀이 (실패)
import sys
input = sys.stdin.readline

k = int(input())
empty_list = list()
for _ in range(k):
    empty_list.append(int(input()))
empty_list.sort()
print("\n".join(str(e) for e in empty_list))

- 메모리 초과로 인하여 실패!!

나의 두 번째 풀이 (계수 정렬)
import sys

input = sys.stdin.readline

N = int(input())
number_list = [0] * 10001

for _ in range(N):
    index = int(input())
    number_list[index] += 1

for i in range(len(number_list)):
    if number_list[i] != 0:
        for _ in range(number_list[i]):
            print(i)
참고
1. 계수 정렬이란? 작은 양의 정수들인 키에 따라 객체를 수집하는 것

Input Data : 
0 1 1 2 2 3
Sorted Data :
0 1 2 3
1 2 2 1