개발일지

행렬의 덧셈 js (2차원 배열,push)- 프로그래머스 LV1 본문

알고리즘 (프로그래머스)

행렬의 덧셈 js (2차원 배열,push)- 프로그래머스 LV1

MotherCarGasoline 2022. 5. 19. 00:19

문제 설명

행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 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]]
function solution(arr1, arr2) {
    var answer = [];
    
    for(let i=0; i<arr1.length; i++){               //[1,2][2,3]
        let sum = [];            
        for(let j=0; j<arr1[i].length; j++){        //arr1 안의 배열의 길이(갯수) = 2
            sum.push(arr1[i][j] + arr2[i][j])    // 1번째 1+3, 2번째 2+4 / 3번째 2+5 4번째 3+6
        }  // [i] = [][]  [j] = [[,][,]] ★ 2차원 배열 = 배열 속의 배열 
        answer.push(sum) // [4,6],[7,9]
    }  //for문 arr1.length; 돌려서 한번더 for문 arr1[i].length;하는게 포인트
    return answer;
}

// sumMatrix  구글링 정보부족 무슨 키워드를 쳐야하나
function sumMatrix(A,B){
    return A.map((a,i) => a.map((b, j) => b + B[i][j]));
    // map() = 적용된 함수를 새로운 배열을 만들어 각각 반환한다.
}
Comments