행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다.
2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요.
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) {
const answer = [];
for (let i = 0; i < arr1.length; i++) {
const bracket = [];
for(let j = 0; j < arr1[i].length; j++) {
bracket.push(arr1[i][j] + arr2[i][j]);
}
answer.push(bracket);
}
return answer;
}
속도를 위해 map이 아닌 2중 for문을 통해 풀었습니다.
2차원 배열을 출력해야하며 i는 arr1.length, arr2.length와 같고
j는 arr1[i].length, arr2[i].length와 같습니다.
반복 하면서 arr1과 2의 요소들을 더하며 이 결과값은 배열이 되도록 bracket이라는 변수에 집어 넣습니다.
j의 반복문이 모두 끝나면 answer변수에 bracket을 push하여 2차원 배열 형태가 될 수 있도록 하고
i의 반복문이 시작되면서 bracket은 다시 초기화됩니다.
안녕하세요! 글 잘 읽었습니다!
아직 초보라 부족해서 질문 한가지 드려도 될까요?
solution.js에서는 var answer = [[]]로 주어졌는데, 이 부분은 제가 코드 작성 시에 바꿔도 되는 것일까요?