웹 프로그래밍

[프로그래머스(Programmers)] 행렬의 덧셈 - JAVA 본문

프로그래머스/level1

[프로그래머스(Programmers)] 행렬의 덧셈 - JAVA

B. C Choi 2021. 10. 13. 20:31

문제 설명

 

행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 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 < answer.length; i++) {
            for(int j = 0; j < answer[i].length; j++) {
                answer[i][j] = arr1[i][j] + arr2[i][j];
            }
        }
        return answer;
    }
}

2차원 배열을 사용하여 문제를 해결해 보았습니다.

처음에 answer의 행과 열의 길이가 같다고 생각했습니다. 하지만, 입출력 예를 보면 [[1, 2], [2, 3]] 행의 길이가 2 열의 길이가 4일 경우의 수도 존재하기 때문에 열의 크기는 arr1[0]의 길이로 입력했습니다.