처음엔 sort 를 썼는데... 메모리 초과로 안됨.
n = int(input())
arr = [int(input()) for _ in range(n)]
arr.sort()
for a in arr:
print(a)
그래서 선택 정렬을 이용해봤는데 역시 안됨...!
n = int(input())
arr = [int(input()) for _ in range(n)]
local_min = 10000001
for i in range(n):
local_min = 10000001
for j in range(i + 1, n):
if local_min > arr[j]:
local_min = arr[j]
local_min_index = j
if local_min < arr[i]:
temp = arr[i]
arr[i] = arr[local_min_index]
arr[local_min_index] = temp
print(arr)
for i in range(n):
print(arr[i])
결국 인터넷 참고해서 계수 정렬로 풀었다... 문제 조건도 중요하구나....
import sys
n = int(sys.stdin.readline())
arr = [0] * 10001
for i in range(n):
index = int(sys.stdin.readline())
arr[index] += 1
for i in range(1, 10001):
for j in range(arr[i]):
print(arr[i])
import sys
n = int(sys.stdin.readline())
arr = [int(isys.stdin.readline()) for _ in range(n)]
arr.sort(reverse=True)
for a in arr:
print(a)
이건 또 메모리 제한이 달라서 sort 가 먹힘