자라는 개발자/문제풀이

백준 C++ 10989번 수 정렬하기 3

자란다 2021. 12. 16. 21:03
728x90
반응형

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 라고 한다는걸 배웠다.

728x90
반응형

'자라는 개발자 > 문제풀이' 카테고리의 다른 글

백준 C/C++ 10250번 ACM 호텔  (0) 2021.12.18
백준 C++ 10828번 스택  (1) 2021.12.17
백준 C++ 9012번 괄호  (1) 2021.12.15
백준 C++ 10816번 숫자 카드 2  (1) 2021.12.14
백준 C++ 1920번 수 찾기  (1) 2021.12.13