문제
내 정답 코드
func solution(_ strings:[String], _ n:Int) -> [String] {
var strings = strings
strings.sort(by: {
let firstIndex = $0.index($0.startIndex, offsetBy: n)
let secondIndex = $1.index($1.startIndex, offsetBy: n)
if $0[firstIndex] == $1[secondIndex] {
return $0 < $1
} else {
return $0[firstIndex] < $1[secondIndex]
}
})
return strings
}
#
1. sort의 클로저를 구성하여 해결한다.
2. n만큼의 문자의 인덱스를 계산한다.
3. 해당 인덱스의 문자를 가져온다. ($0과 $1)
4. 문자가 같으면 전체 문자로 정렬하고
5. 문자가 다르면, 해당 문자로 정렬한다.
배운 기술
'프로그래머스 (Swift) > lv 1' 카테고리의 다른 글
[lv1] K번째 수 (0) | 2024.10.20 |
---|---|
제일 작은 수 제거하기 (0) | 2024.10.16 |
[lv1] 최대공약수와 최소공배수 (0) | 2024.10.10 |
[lv1] 직사각형 별찍기 (0) | 2024.10.08 |
[lv1] 하샤드 수 (0) | 2024.10.02 |