카테고리 없음

행렬의 덧셈

lsme 2022. 5. 30. 20:59

 

<문제>

 

행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요.제한 조건

  • 행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다.

 

입출력 예

 

arr1                                                           arr2                                                         return

[[1,2],[2,3]] [[3,4],[5,6]] [[4,6],[7,9]]
[[1],[2]] [[3],[4]] [[4],[6]]

 

 

 

class Solution {
    public int[][] solution(int[][] arr1, int[][] arr2) {
        
        int[][] answer  = new int[arr1.length][arr1[0].length];
        for (int i = 0; i< arr1.length; i++){
            for(int j=0; j<arr1[0].length; j++){
                answer[i][j] = arr1[i][j] + arr2[i][j];
            }
        }
        return answer;
    }
}

 

new int[행][열]

즉, 행으로 [1,2][2,3] 2개를 가져옴, 

열은 [1,2] 안에 2개의 요소를 가져온다. 

 

그래서 2번째 문제를 보면, 

arr1.length 는 [1], [2] 2개인 행을 가져온것이고, 

arr1[0].length 는 [1] 1개의 열을 가져온 것이다. 

 

for문에서도 똑같이 해줘야한다.