import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.Collections;
public class Main {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
String input = br.readLine();
int[] arr = new int[input.length()];
for(int i=0; i<input.length(); i++){
arr[i] = Integer.valueOf(input.charAt(i));
}
Arrays.sort(arr);
for(int i=arr.length-1; i>=0; i--){
sb.append(arr[i]-'0');
}
System.out.print(sb);
br.close();
}
}
String 으로 한 번에 입력받아 int[] 배열에 charAt()을 이용해 넣어주었다. 그리고는 Arrays.sort()쓰면 끝!
이때 주의사항은 charAt()을 통해 int[]배열에 들어간 값은 아스키코드값이다.
즉 숫자1 -> 49 로 저장이 되므로, 후에 출력할 때에 arr[i]-'0' 을 해주어야 한다.
(숫자 1을 나타내고 싶다면, 숫자1=아스키코드49, 숫자0=아스키코드48 이므로 arr[i]-'0' = 숫자1)
'1d-1c > BOJ' 카테고리의 다른 글
1181_단어 정렬 (JAVA) (0) | 2020.12.04 |
---|---|
11650_좌표 정렬하기 (JAVA) (0) | 2020.12.04 |
1707_이분 그래프 (JAVA) (0) | 2020.12.03 |
13023_ABCDE (JAVA) (0) | 2020.12.03 |
14888_연산자 끼워넣기 (JAVA) (0) | 2020.11.29 |