11650과 같은 로직으로 풀 수 있는 11651번이다.
2차원 평면 위의 점 N개가 주어진다. 좌표를 y좌표가 증가하는 순으로, y좌표가 같으면 x좌표가 증가하는 순서로 정렬한 다음 출력하는 프로그램을 작성하시오.
첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 xi와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고, 위치가 같은 두 점은 없다.
첫째 줄부터 N개의 줄에 점을 정렬한 결과를 출력한다.
같은 로직으로 리스트에 append하고, sort를 하면 된다.
이번 문제는 x를 먼저 비교하지 않고 y를 먼저 비교하므로 append 할때 자리를 뒤바꿔서 넣는 꼼수를 부려보쟈
L.append((y,x))
#좌표 정렬하기 2
import sys
N = int(input())
L = []
for i in range(N) :
x, y = map(int, sys.stdin.readline().split())
L.append((y,x))
L.sort()
sys.stdout.write("\n".join(f"{x} {y}" for y, x in L))