[Algorithm🧬] 백준 10989 : 수 정렬하기 3 / 11931 : 수 정렬하기 4

또상·2022년 10월 18일
0

Algorithm

목록 보기
55/133
post-thumbnail

10989 : 수 정렬하기 3

문제


처음엔 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])



11931 : 수 정렬하기 4

문제

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 가 먹힘

profile
0년차 iOS 개발자입니다.

0개의 댓글