반응형

1. 문제 설명

- 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬같은 행, 같은 열의 값을 서로 더한 결과가 됩니다.

- 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요.

 

 

2. 제한 조건

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

 

 

3. 입출력 예

 

arr1 arr2 return
[[1,2],[2,3]] [[3,4],[5,6]] [[4,6],[7,9]]
[[1],[2]] [[3],[4]] [[4],[6]]

 

 

4. 문제 풀이 코드

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[i].length; j++ ) {
            
                answer[i][j] = arr1[i][j] + arr2[i][j];
                
            }
            
        }
        
        return answer;
        
    }
    
}

 

- 2차원 배열 arr1과 arr2를 파라미터로 받아 answer 배열을 반환합니다.

 

- 먼저 arr1과 arr2는 행과 열의 길이가 같은 행렬입니다.

- 따라서 answer의 크기를 arr1의 행의 길이와 arr1[0]의 열의 길이로 선언했습니다.

 

- for문을 arr1의 행의 길이만큼 돌리고, 안에서 for문을 한번 더 돌립니다.

- 안쪽 for문은 각 행의 열의 길이만큼 돌리면서 arr1과 arr2의 값을 하나씩 더해서 answer에 넣습니다.

 

- 이때, answer에는 arr1과 arr2를 더한 자리와 같은 곳에 넣어야 합니다.

 

- for문을 마치고 나서 answer를 반환해주면 끝입니다.

 

 

- 위 문제는 2차원 배열을 정확하게 이해했다면 충분히 풀 수 있는 쉬운 문제였습니다.

- 위 문제를 풀기가 어려웠다면, 2차원 배열 개념 공부를 다시 해보시길 추천해드립니다.

 

 

 


이상으로 프로그래머스 Level 1. 행렬의 덧셈 문제를 JAVA 언어로 풀어보았습니다.


 

반응형