반응형
-내 생각
이번 문제는 11650인 좌표 정렬하기 문제에서 정렬 기준만을 변경한 것이므로 Comparator인터페이스 오버라이딩 부분만 수정해주면 간단하게 해결할 수 있었다.
-해법
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n= sc.nextInt();
int arr[][]=new int[n][2];
for(int i=0;i<arr.length;i++) {
for(int j=0;j<arr[i].length;j++) {
arr[i][j] = sc.nextInt();
}
}
Arrays.sort(arr,new Comparator<int[]>() {
@Override
public int compare(int[] o1, int[] o2) { // 11650번 문제의 답에서 이부분만 수정해주면 된다.
if(o1[1]==o2[1])
return Integer.compare(o1[0], o2[0]);
return Integer.compare(o1[1], o2[1]);
}
});
for(int i=0;i<arr.length;i++) {
System.out.println(arr[i][0]+" "+arr[i][1]);
}
}
}
반응형