홍시홍의 프로그래밍

[백준 11650] 좌표 정렬하기 3 with 파이썬 본문

파이썬

[백준 11650] 좌표 정렬하기 3 with 파이썬

홍시홍 2020. 9. 16. 00:35

요구사항

첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)

xi와 yi 두개가 주어졌을때

1. x에 대해서 오름차순

2. xi, yi가 같을때, yi에 대해서 오름차순으로 정렬

 

참고

파이썬에서는 key를 통해 내가 원하는 방식으로 정렬가능하다. Default는 오름차순으로 정해져 있다

정렬을 활용하는 방법은 아래와 같다.

arr.sort(key = lambda x: (x[0], x[1]))

 

 또한, 파이썬에서는 from functools import cmp_to_key 모듈을 활용하여 내가 원하는 방식으로 정렬도 가능하다

 

sort(arr, key=cmp_to_key(함수))의 형태로 가능하며

내가 원하는 함수를 직접작성하여 사용한다

 

풀이

import sys 
input = sys.stdin.readline
n=int(input())
arr=[list(map(int,input().split())) for i in range(n)]
arr.sort(key = lambda x: (x[0], x[1]))
for j in arr:
    print("%d %d"%(j[0],j[1]))
Comments