2차원 배열의 정렬에 관한 문제다.
자바의 2차원 배열 정렬에 관한 내용은 이 포스팅에 정리해두었다.
자바 - 2차원 배열 정렬 (오름차순, 내림차순, 다중 조건)
자바의 2차원 배열을 Arrays.sort() 를 통해 곧바로 정렬하려고 하면 java.lang.ClassCastException: I cannot be cast to java.lang.Comparable 오류가 발생한다. 오류 문구와 같이 비교 기준이 없어 캐스팅에 실패하기
2nyongs.tistory.com
import java.util.Arrays;
import java.util.Comparator;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int N = in.nextInt();
int[][] arr = new int[N][2];
for (int i = 0; i < N; i++) {
arr[i][0] = in.nextInt();
arr[i][1] = in.nextInt();
}
Arrays.sort(arr, new Comparator<int[]>() {
@Override
public int compare(int[] o1, int[] o2) {
if (o1[1] == o2[1]) {
return o1[0] - o2[0];
} else {
return o1[1] - o2[1];
}
}
});
for (int i = 0; i < N; i++) {
System.out.println(arr[i][0]+" "+arr[i][1]);
}
}
}
'Algorithm' 카테고리의 다른 글
백준 2108번 통계학 (0) | 2023.03.17 |
---|---|
백준 12865번 평범한 배낭 (0) | 2023.03.17 |
백준 1932번 정수 삼각형 (0) | 2023.03.16 |
백준 1149번 RGB거리 (0) | 2023.03.16 |
백준 9461번 파도반수열 (0) | 2023.03.16 |
댓글