Hello World!/Algorithm

백준 11650 좌표 정렬하기 - python

헬로월드! 2021. 1. 14. 01:01

 

11650번: 좌표 정렬하기 (acmicpc.net)

 

11650번: 좌표 정렬하기

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

www.acmicpc.net

 

 

풀이)

array 를 sort 해주면 되는 문제 

기준이 두개일 때, lambda 를 써주면 쉽게 해결 가능하다.

튜플로 순서를 보내주면 됨 ! 

 

여기서 lambda 는 인공지능 분야에서 쓰이는 Lisp 언어에서 물려 받은 것이다. 함수를 한줄로 만들게 해주는 것

lambda 인자 : 표현식 

으로 써주면 된다.

 

예를들어 , mylist 가 다음과 같이 정의되어 있을 때 x좌표 기준으로 오름차순으로 결과를 찍어보고 싶다면

mylist.sort(key=lambda x: x[0]) 를 하면 된다. 

 

x 좌표 기준으로 정렬된 것을 볼 수 있다.

이건 y 좌표 기준으로 오름차순 정렬 

코테에서 유용하게 쓰일 것 같다!