cnt[10])。
int maxNumber(int n) {
int cnt[10] = {0};
if (n == 0) return 0;
while (n > 0) {
cnt[n % 10]++;
n /= 10;
}
int result = 0;
for (int d = 9; d >= 0; --d) {
while (cnt[d]-- > 0) {
result = result * 10 + d;
}
}
return result;
}
輸入 624891 → 統計 {1,2,4,6,8,9} → 輸出 986421。