본문 바로가기

백준/C++

[Baekjoon/C++] 소트인사이드 1427번

Baekjoon Online Judge

문제로 이동

 

문제

배열을 정렬하는 것은 쉽다. 수가 주어지면, 그 수의 각 자리수를 내림차순으로 정렬해보자.

 

입력

첫째 줄에 정렬하려고 하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다.

 

출력

첫째 줄에 자리수를 내림차순으로 정렬한 수를 출력한다.

 


예제 입력 예제 출력
2143 4321
999998999 999999998
61423 64321
500613009 965310000

풀이

#include <iostream>
using namespace std;

int main() {
    // 입력
    string s;
    cin >> s;

    // 정렬
    for (int i = 0; i < s.length(); i++) {
        for (int j = i + 1; j < s.length(); j++) {
            if (s[i] < s[j]) {
                char c = s[i];
                s[i] = s[j];
                s[j] = c;
            }
        }
        // 출력
        printf("%c", s[i]);
    }

    return 0;
}

입력받는 수가 크기 때문에 string으로 받아서 정렬했다.