본문 바로가기

앱 개발/Algorithm

행렬의 덧셈

<문제 37번>

 

class Solution {
    fun solution(arr1: Array<IntArray>, arr2: Array<IntArray>): Array<IntArray> {

 

        // arr1의 행의 개수를 반환한다.

        val numRo = arr1.size

 

        // arr1의 첫 번째 행의 열의 개수를 반환한다.

        val numCo = arr1[0].size

 

        // 행의 개수가 numRo인 1차원 배열과 각 행에 대해 열의 개수가 numCo인 1차원 배열을 생성하여 2차원 배열을 생성한다.
        val res = Array(numRo) { IntArray(numCo) }

 

        // 바깥쪽 루프는 0부터 numRo - 1까지 반복하여 res 배열의 각 행에 접근한다.
        for (i in 0 until numRo) {

 

            // 안쪽 루프는 0부터 numCo - 1까지 반복하여 res 배열의 각 열에 접근한다.

            for (j in 0 until numCo) {

 

                // 현재 위치의 arr1과 arr2의 원소를 더하여 res 배열의 해당 위치에 저장한다.
                res[i][j] = arr1[i][j] + arr2[i][j]
            }
        }


    return res
    }
}

728x90