본문 바로가기

코딩테스트

[프로그래머스] level1. 행렬의 덧셈 (javascript)

반응형

문제

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

나의 풀이

배열을 하나 선언해서 덧셈한 값을 순차적으로 저장하였다.

function solution(arr1, arr2) { 
    var answer = [];
    for(let i=0; i<arr1.length; i++){
        let temp = [];
        for(let j=0; j<arr1[i].length; j++){
            temp.push(arr1[i][j] + arr2[i][j]) 
        } answer.push(temp) 
    } 
    return answer; 
}

다른이들의 풀이

function sumMatrix(A,B){

    return A.map((a,i) => a.map((b, j) => b + B[i][j]));
}

map함수를 2번 사용해서 처리하였다.
map의 첫번째 값은 element, 두번째값은 index 임을 이용하면 된다.

참조

map : map() 메서드는 배열 내의 모든 요소 각각에 대하여 주어진 함수를 호출한 결과를 모아 새로운 배열을 반환합니다.

반응형