코딩테스트/백준

[Python] 백준 11651번. 좌표 정렬하기 2

jungmin.park 2023. 12. 18. 11:18

https://www.acmicpc.net/problem/11651

 

11651번: 좌표 정렬하기 2

첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 xi와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고, 위치가 같은 두 점은 없다.

www.acmicpc.net

문제설명

x,y 가 주어졌을때 y를 기준으로 정렬하는 문제이다.

 

풀이설계

  • 2차원 배열을 활용한다.
  • x,y 값을 처음에 y,x로 저장한다.
  • 그 다음 리스트를 sort 한다.
  • 출력 시 y,x -> x,y로 바꿔 출력한다.

 

import sys

input = sys.stdin.readline
n = int(input())
lst = []
for i in range(n):
    x, y = map(int, input().split())
    lst.append([y, x])

lst.sort()

for y,x in lst:
    print("{0} {1}".format(x, y))