Algorithm/문제풀이_백준
Swift) 백준 11650번 (좌표 정렬하기)
Joahnee
2021. 8. 23. 15:32
요구능력 : 좌표기능과 정렬함수를 활용할줄 아느냐
코드설명 : Swift에 내장된 정렬함수를 사용했다.
Swift의 강력한 기능 중 하나인 좌표형식으로 저장할 수 있는기능.. 난 까먹고 있었다.
sort함수를 평소에는 sort() 나 sort(by: <) 이런식으로만 썻었는데 처음 클로저로 써봤다.
앞에 좌표와 뒤의 좌표의 x좌표가 같다면 y좌표를 오름차순 같지않다면 x좌표를 오름차순한다.
후기 : 매우 간단한 문제지만 좌표기능과 sort()함수 활용법을 몰라서 고전한 문제..
let n = Int(readLine()!)!
var arr: [(Int, Int)] = []
for _ in 0..<n {
let a = readLine()!.split(separator: " ").map{Int($0)!}
arr.append((a[0], a[1]))
}
arr.sort(by: {
$0.0 == $1.0 ? $0.1 < $1.1 : $0.0 < $1.0
} )
for x in 0..<n {
print("\(arr[x].0) \(arr[x].1)")
}