본문 바로가기

프로그래머스 (Swift)/기초

[Day20-4] 배열의 길이에 따라 다른 연산하기

문제

 

내 정답 코드

import Foundation

func solution(_ arr:[Int], _ n:Int) -> [Int] {
    var arr = arr
    
    if arr.count % 2 == 0 {
        (0..<arr.count).filter { $0 % 2 == 1 }.map { arr[$0] += n }
    } else if arr.count % 2 == 1 {
        (0..<arr.count).filter { $0 % 2 == 0 }.map { arr[$0] += n }
    }
    
    return arr
}

 

#

1. 배열의 길이가 홀수인지 짝수인지 먼저 판단하였고

2. 짝수라면 홀수 인덱스 값에만 n을 더하여 배열을 반환하였다.

3. 홀수라면 짝수 인덱스 값에만 n을 더하여 배열을 반환하였다.


배운 기술