BAEKJOON/CLASS 2

백준 알고리즘 10989번 수 정렬하기 3

치조 2024. 8. 2. 03:56
반응형

문제

N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.

입력

첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다.

출력

첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다.

예제 입력 1

10
5
2
3
1
4
2
3
5
1
7

예제 출력 1

1
1
2
2
3
3
4
5
5
7

CODE

#include <stdio.h>
#include <stdlib.h>
#define MAX_VALUE 10000
int main() {
    int N;
    scanf("%d", &N);
    int *count = (int *)calloc(MAX_VALUE + 1, sizeof(int));
    
    for (int i = 0; i < N; i++) {
        int number;
        scanf("%d", &number);
        count[number]++;
    }
    for (int i = 1; i <= MAX_VALUE; i++) {
        while (count[i]--) 
            printf("%d\n", i);
    }
    free(count);
}

감사합니다.

 

반응형