[Java] 행렬의 덧셈 (programmers)

Haeun Noh·2023년 1월 18일
0

programmers

목록 보기
32/64
post-thumbnail

0118


문제 설명

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


제한 조건

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


입출력 예

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

소스 풀이

    public int[][] solution(int[][] arr1, int[][] arr2) {
        int[][] answer = new int[arr1.length][arr1[0].length];

두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과를 담을 answer 2차원 배열을 선언 및 생성한다. 이 때 answer의 행과 열은 arr1의 행과 열과 같으므로 arr1.lengtharr[0].length로 행과 열을 잡아준다. arr1arr2의 행, 열의 개수는 동일하므로 arr2.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];
            }
        }

첫 번째 for문을, 두 번째 for문을 의미한다.
arr1arr2의 각각 같은 행과 열의 값을 더하여 answer의 동일한 행, 열에 저장한다.


        return answer;

그 값을 리턴한다.


실행 결과



profile
기록의 힘을 믿는 개발자, 노하은입니다!

0개의 댓글