상대적으로 굉장히 쉬운 문제로 문자열을 잘 다뤄야한다.
- 입력받은 수를 String으로 변환
- String을 char 배열로 변환
- 아스키코드 값을 이용해서 문자값을 간단히 숫자로 변환
- Arrays.sort로 오름차순 정렬 후 역방향으로 출력
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
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());
String s = Integer.toString(N);
char num[]=s.toCharArray();
int list[]=new int[num.length];
for(int i=0; i<num.length; i++)
list[i] = num[i]-48;
Arrays.sort(list);
for(int i=list.length-1; i>=0; i--)
System.out.print(list[i]);
}
}