1.점의 개수 N을 입력받는다.
2. x좌표와 y좌표를 저장할 2차원 배열 arr[N][2]를 생성한다.
3. x좌표와 y좌표를 입력받아 배열에 저장한다.
4. x좌표의 오름차순으로 배열을 정렬하는데 x좌표가 같을 때는 y좌표의 오름차순으로 정렬한다.
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.BufferedReader;
import java.util.StringTokenizer;
import java.util.Arrays;
public class Main{
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
int[][] arr = new int[N][2];
for(int i=0;i<N;i++){
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
arr[i][0] = Integer.parseInt(st.nextToken());
arr[i][1] = Integer.parseInt(st.nextToken());
}
// arr를
Arrays.sort(arr, (o1,o2)->{
if(o1[0]==o2[0]){
return Integer.compare(o1[1], o2[1]);
}
else{
return Integer.compare(o1[0], o2[0]);
}
});
for(int i=0;i<N;i++){
for(int j=0;j<2;j++){
System.out.print(arr[i][j]+" ");
}
System.out.println();
}
}
}
'Algorithm > [BOJ] - JAVA' 카테고리의 다른 글
[백준] 1181 : 단어 정렬 JAVA 풀이 (0) | 2022.05.29 |
---|---|
[백준] 11651 : 좌표 정렬하기 2 JAVA 풀이 (0) | 2022.05.26 |
[백준] 1427 : 소트인사이드 JAVA 풀이 (0) | 2022.05.26 |
[백준] 2108 : 통계학 JAVA 풀이 (0) | 2022.05.26 |
[백준] 10989 : 수 정렬하기 3 JAVA 풀이 (0) | 2022.05.26 |