본문 바로가기

PS/백준

[BOJ] 백준 11650 좌표 정렬하기 (Swift)

반응형

문제

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

 

11650번: 좌표 정렬하기

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

www.acmicpc.net

풀이

x좌표로 오름차순, x좌표가 같다면 y좌표로 오름차순으로 정렬해주는 문제입니다.
Swift에서는 고차함수 sort 메서드의 파라미터인 Bool타입을 리턴해주는 클로저로 어떤 식으로 정렬을 해줄지 정의할 수 있습니다.

x좌표가 같다면? y좌표를 오름차순으로 정렬하고, 같지 않다면 x좌표를 오름차순으로 정렬하도록 작성을 해주었습니다.

소스코드

후기

Swift의 sort 혹은 sorted 메서드를 사용자가 정의한대로 정렬할 수 있는것이 큰 장점인 것 같습니다.
사용할 줄 안다면 쉽게 풀 수 있는 문제인 것 같습니다.

반응형