본문 바로가기

Java/Java 알고리즘 프로그래머스

[프로그래머스-LEVEL 1] 3. 행렬의 덧셈

반응형
  • 행렬의 덧셈
문제 설명

행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 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]]

 


이차원 배열 행의 길이=arr.length;

이차원 배열 열의 길이=arr[0].length;

class Solution {
    public int[][] solution(int[][] arr1, int[][] arr2) {
        int[][] answer = {};
        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;
    }
}

 

+) 세련된 풀이

class Solution {
    public int[][] solution(int[][] arr1, int[][] arr2) {
        int[][] answer = {};
        answer=arr1;
        //배열의 크기가 같으므로 결과배열을 arr1로 설정해도 된다.

        for(int i=0;i<arr1.length;i++){
            for(int j=0;j<arr1[i].length;j++){
               answer[i][j] += arr2[i][j];
               //결과배열이 arr1이므로, arr2를 추가하기만 하면 완성
            }
        }
        
        return answer;
    }
}
반응형