import java.util.Scanner;
import java.util.Arrays;
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, (e1, e2) -> {
if(e1[0] == e2[0]) {
return e1[1] - e2[1];
} else {
return e1[0] - e2[0];
}
});
for(int i = 0; i < N; i++) {
System.out.println(arr[i][0] + " " + arr[i][1]);
}
}
}
처음에는 굉장히 어려웠다. 2차원 배열을 정렬하는 것이니까. 그런데 기존에 배웠던 스트림을 이용하려고 리스트로 도전하다 시간초과가 나서 그냥 배열로 해볼까하다 성공했다. 아직까지 왜 이게 시간초과가 나는지 모르겠지만 조금 더 봐야겠다.