본문 바로가기

CodingTest/Baekjun Online Judge

[ BOJ / 파이썬 ] 15688 수 정렬하기 5

1. counting sort 로 풀고 싶었습니다.

 

import sys
from collections import OrderedDict
input = sys.stdin.readline


arr = {}

n = int(input())
for i in range(n):
  k = int(input())
  if k in arr:
    arr[k] += 1
  else:
    arr[k] = 1

arr = OrderedDict(sorted(arr.items(), key = lambda t:t[0]))

for key, value in arr.items():
  for i in range(value):
    print(key)

 

: 백준 사이트에 파이썬으로 제출하면 시간 초과가 납니다.

 

: 언어 설정을 PyPy3로 바꿔서 내야지 맞았습니다! 처리가 됩니다.

 

: dict를 사용했기 때문에 dict자체가 값 탐색에서는 조금 느리고 해당 문제에서는 수의 범위가 느리기 때문에 파이썬으로는 안 되었던 것 같습니다.