코딩테스트/백준

[백준 1427] 소트인사이드 (Java)

imachill7guy 2025. 2. 28. 01:22

 

https://www.acmicpc.net/problem/1427

소트인사이드 

문제

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

입력

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

출력

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

예제 입력 1 복사

2143

예제 출력 1 복사

4321
 

풀이

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;

public class Main {
    public static void main (String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String[] numbers = br.readLine().split(""); // 한 글자씩 나누기
        Integer[] A = new Integer[numbers.length];

        // 원본배열 값 넣기
        for(int i=0; i<numbers.length; i++){
            A[i] = Integer.parseInt(numbers[i]);
        }

        // 내림차순 정렬
        Arrays.sort(A, Collections.reverseOrder());
        StringBuilder sb = new StringBuilder();

        for(int i=0; i<A.length; i++){
            sb.append(A[i]);
        }

        System.out.println(sb);
    }
}