문제
내 정답 코드
import Foundation
func solution(_ n:Int, _ slicer:[Int], _ num_list:[Int]) -> [Int] {
let (a, b, c) = (slicer[0], slicer[1], slicer[2])
switch n {
case 1:
return Array(num_list[0...b])
case 2:
return Array(num_list[a...])
case 3:
return Array(num_list[a...b])
default:
return num_list[a...b].enumerated().filter { $0.offset.isMultiple(of: c) }.map { Int($0.element) }
}
}
#
1. 4개의 케이스를 구성하고
2. 각 케이스의 맞게 리스트를 잘라준다.
3. 가장 복잡한 4번 케이스는 enumerated를 활용하여 인덱스를 필터링하여 해결하였다.
배운 기술
'프로그래머스 (Swift) > 기초' 카테고리의 다른 글
[Day12-3] 배열 만들기 3 (0) | 2024.03.24 |
---|---|
[Day12-2] 첫 번째로 나오는 음수 (0) | 2024.03.24 |
[Day11-5] 가까운 1 찾기 (0) | 2024.03.17 |
[Day11-4] 카운트 다운 (0) | 2024.03.17 |
[Day11-3] 글자 지우기 (0) | 2024.03.17 |