시간제한 2초
배열을 정렬하는 것은 쉽다. 수가 주어지면, 그 수의 각 자리수를 내림차순으로 정렬해보자.
첫째 줄에 정렬하려고 하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다.
첫째 줄에 자리수를 내림차순으로 정렬한 수를 출력한다.
2143
딱히 어려운거는 없다. String으로 입력을 받은 후 배열에 int형으로 넣어준 후 정렬만 하면 되는 문제이다.
바로 코드를 보면 이해가 될것이다.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
public class 소트인사이트 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String[] numbers = br.readLine().split("");
int[] A = new int[numbers.length];
for(int i = 0; i < A.length; i++){
A[i] = Integer.parseInt(numbers[i]);
}
Arrays.sort(A);
StringBuilder sb = new StringBuilder();
for(int i = A.length - 1; i >= 0; i--){
sb.append(A[i]);
}
System.out.println(sb);
}
}
원래는 선택정렬을 알아보기 위해서 문제를 풀다보니 내가 생각한 문제로도 풀어보고 싶어서 작성하게 되었다. 문제가 딱히 어려웠던 것은 없었다.