Swift | programmers/Lv1.

[Swift] Lv.1 행렬의 덧셈

iOSDEv 2024. 3. 10. 07:57
행렬의 덧셈

 

문제 설명

 

나의 설명
func solution(_ arr1:[[Int]], _ arr2:[[Int]]) -> [[Int]] {
    return zip(arr1, arr2)
        .map {
            zip($0, $1).map { $0 + $1 }
    }
}

 

zip에 대해서 좀 더 배울 수 있었던 시간이였다

zip + map 정렬을 두개만 하게 되면 [0.0 , 1.0] 한 묶음으로 된다 그래서 한번 더 묶어서 map을 해준 후 더해주면 결과값이 나온다

다른 사람의 풀이
func solution(_ arr1:[[Int]], _ arr2:[[Int]]) -> [[Int]] {
    var arr: [[Int]] = []

    for n in 0..<arr1.count {
        var temp:[Int] = []
        for m in 0..<arr1[n].count { //각 숫자에 한해서만 더해진다
            temp.append(arr1[n][m] + arr2[n][m])
        }
        //[[0.0, 0.1],[1.0, 1.1]]
        arr.append(temp)
    }

    return arr
}

 

func solution(_ arr1:[[Int]], _ arr2:[[Int]]) -> [[Int]] {
    var arr3:[[Int]] = Array(repeating:Array(repeating:0, count:arr1[0].count), count:arr1.count)
    for i in 0..<arr1.count {
        for j in 0..<arr1[i].count {
            arr3[i][j] = arr1[i][j] + arr2[i][j]
        }
    }
    return arr3
}

 

 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr