본문 바로가기

programmers-코딩테스트 연습/Level 1. 자바

2021-07-14 / 행렬의 덧셈

문제 설명

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

 

 

정답 코드

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;
    }
}

 

 

코드 설명

덧셈을 구할 배열의 행과 열을 먼저 구한다. 매개변수로 들어온 두 배열의 길이는 같으므로 아무 배열의 행의 길이와 열의 길이를 가져온다. 
반복문의 i는 행의 길이만큼 돌려 값을 구한다.

그 안에 있는 j 반복문은 행 마다 있으므로 이중포문으로 돌려준다.

i는 answer의 행, j는 answer의 열에 넣어서 더해준다. 

 

 

 

 

코딩테스트 연습 - 행렬의 덧셈

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

programmers.co.kr