문제📝
결과😍
코드💻
n = int(input())
res = []
for i in range(n):
x,y = map(int,input().split())
res.append((x,y))
res.sort()
for i,j in res:
print(i, j)
풀이💡
- 점의 개수 n을 입력받음
- 반복문을 통해 n의 수 만큼 x,y를 입력받아 배열 res에 append
- res를 정렬!
=> 이 과정에서 1) x순으로 정렬, 2) y순으로 정렬
참고🙏
👉 [백준] 11650번: 좌표 정렬하기 - 파이썬
다른 사람의 풀이🤔
import sys
n = int(sys.stdin.readline())
so = []
for i in range(n):
so.append(list(map(int, sys.stdin.readline().split())))
so.sort(key=lambda x: (x[0], x[1]))
for i in so:
print(i[0], i[1])
- sys.stdin.readline()을 이용한 풀이
- 시간 초과가 나는 경우 해당 방법을 이용해보자!
- lambda를 이용해 정렬 기준을 정해줌. 즉, 첫번째 인자(x[0]), x줄부터 정렬을 하고 그 다음 두번째 인자(x[1]), y줄을 정렬해준다.