728x90
최근 며칠 동안 정렬에 대한 개념이 부족하다고 생각되어서 정렬 문제 위주로 풀고 있는 중입니다.
쉬운 문제부터 풀어나가고 있는데 아직도 조금 헷갈리는 부분들이 있네요 ㅎㅎ..
이 문제 난이도는 하? 정도라고 생각하고 정렬 인터페이스만 사용할 수 있다면 쉽게 풀 수 있는 문제입니다.
시간과 메모리에 제한이 있기 때문에 스캐너가 아닌 BufferedReader의 사용이 필수인 문제입니다!
package baekjoon.level12;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.Comparator;
public class BOJ_1427 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
String num = String.valueOf(N);
int[] nums = new int[num.length()];
int i=0;
while(N > 0) {
nums[i] = N % 10;
N /= 10;
i++;
}
Integer[] boxed_nums = new Integer[nums.length];
for(int j=0; j<boxed_nums.length; j++){
boxed_nums[j] = nums[j];
}
Arrays.sort(boxed_nums, new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return o2 - o1;
}
});
for(int res : boxed_nums) {
System.out.print(res);
}
}
}
입력된 자릿수의 길이를 가진 배열 생성 후 각 자릿수를 넣고 Comparator를 이용해서 내림차순으로 정렬해주었습니다.
728x90
'Algorithms 🚀 > Baekjoon' 카테고리의 다른 글
[백준/1181번] 단어 정렬 - JAVA[자바] (0) | 2021.04.13 |
---|---|
[백준/11650번] 좌표 정렬하기 - JAVA[자바] (0) | 2021.04.12 |
[백준/8958번] OX퀴즈 (0) | 2021.02.16 |
[백준/3052번] 나머지 (0) | 2021.02.02 |
[백준/1546번] 평균 (0) | 2021.02.02 |