https://www.acmicpc.net/problem/11651
이 문제는 x,y 좌표를 받고 1순위로 y좌표, 2순위로 x좌표를 이용해 정렬하는 문제이다. 파이썬을 이용한다면 sort함수 인자인 key=lambda를 이용해 쉽게 해결할 수 있다.
N=int(input())
arr=[]
for i in range(N):
a,b=map(int,input().split())
arr.append([a,b])
arr.sort(key= lambda x: (x[1],x[0]))
for a,b, in arr:
print(a,b)
lambda x: (x[1],x[0])의 뜻은 y좌표로 먼저(두번째 숫자) 정렬하고 같은 값이 있으면 x좌표로 정렬 하라는 의미이다.
'알고리즘' 카테고리의 다른 글
힙 (0) | 2022.05.10 |
---|---|
전위, 중위 순회 결과를 이용해 이진 트리 구축 (0) | 2022.05.10 |
문자열을 숫자 리스트로 각 자리마다 분해하기 (0) | 2022.05.02 |
8. 가장 긴 팰린드롬 부분 문자열(투포인터, 슬라이딩 윈도우,max) (0) | 2021.08.18 |
7. 애너그램 (Defaultdict, join 활용, 파이썬 내장 정렬함수,sorted,sort) (0) | 2021.08.16 |