happy coding

[java] 1427. 소트인사이드 본문

coding study/baekjoon

[java] 1427. 소트인사이드

yeoonii 2023. 8. 31. 16:19

문제

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

입력

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

출력

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

import java.io.*;
import java.util.*;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        int N = Integer.parseInt(br.readLine());
        ArrayList<Integer> arrNum = new ArrayList<>();

        while (N > 0) {
            arrNum.add(N % 10);
            N /= 10;
        }

        Collections.sort(arrNum, Collections.reverseOrder()); // 내림차순 정렬

        int restoredNumber = 0;
        int multiplier = 1;
        for (int i = arrNum.size() - 1; i >= 0; i--) {
            restoredNumber += arrNum.get(i) * multiplier;
            multiplier *= 10;
        }

        System.out.println(restoredNumber);
    }
}

'coding study > baekjoon' 카테고리의 다른 글

[java] 2751. 수 정렬하기 2  (0) 2023.08.31
[java] 1764. 듣보잡  (0) 2023.08.31
[java] 2941. 크로아티아 알파벳  (0) 2023.08.30
[java] 1316. 그룹 단어 체커  (0) 2023.08.30
[java] 25372. 성택이의 은밀한 비밀번호  (0) 2023.08.21
Comments