백준 c++ 10989 수 정렬하기 3

jaranda·2021년 12월 16일
0

10989번 수 정렬하기 3


문제풀이

#include <iostream>
#include <algorithm>
using namespace std;
int arr[10001];
void fast_io(void)
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);
}
int main(void)
{
    fast_io();

    int n;
    cin >> n;
    for (int i = 0; i < n; i++)
    {
        int j;
        cin >> j;
        arr[j]++;
    }
    for (int i = 0; i < 10001; i++)
    {
        while (arr[i]-- != 0)
        {
            cout << i << "\n";
        }
    }
}

메모리,시간제한안보고 그냥 했다가 틀려서 보니까 힌트에 10000 보다 작거나 같은 자연수가들어오는점을 참고하라해서 들어오는 숫자의 인덱스값을 올려주었다. 이렇게 하는걸 counting sort 라고 한다는걸 배웠다.

profile
자라는 개발자

0개의 댓글