[プログラマー]コードテスト練習-練習問題レベル1の整数降順で並べ替える



Solution.java

class Solution {
    public long solution(long n) {
        long answer = 0;
        
        int[] count = new int[10];
        while (n != 0) {
            count[(int) (n % 10)]++;
            n /= 10;
        }
        
        for (int i = 9; i >= 0; i--) {
            for (int j = 0; j < count[i]; j++) {
                answer *= 10;
                answer += i;
            }
        }
        
        return answer;
    }
}
出典:プログラマーコードテスト練習、https://programmers.co.kr/learn/challenges