프로그래머스 JavaScript [행렬의 덧셈]★ 이중 for문
- 행렬의 덧셈
행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요.
제한 조건- 행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다.
[[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 (i=0; i<arr1.length; i++){
answer[i]=[]
for (j=0; j<arr1[i].length; j++) {
answer[i].push(arr1[i][j] + arr2[i][j])
}
}
return answer;
}
우선 answer의 [i] 번째 인덱스에 빈 배열을 추가하게 됩니다.
[ [], [], [], [] ] 와 같은 형태가 됩니다.
이제 빈 배열에 순서대로 배열끼리 더한 값을 넣어줍니다.
answer[0]에 값 넣기 // [ [ arr1[0][0] + arr[0][1] ], [], [], [] ]
answer[0]에 값 넣기 // [ [ arr1[0][0] + arr[0][1], arr1[1][0] + arr[1][1] ], [], [], [] ]
이렇게 [0]번째 배열에 값을 차례대로 넣고,
answer[1]에 값 넣기 // [ [ arr1[0][0] + arr[0][1], arr1[1][0] + arr[1][1] ], [ arr1[0][0] + arr[0][1] ], [ ], [ ] ]
answer[1]에 값 넣기 // [ [ arr1[0][0] + arr[0][1], arr1[1][0] + arr[1][1] ], [ arr1[0][0] + arr[0][1], arr1[1][0] + arr[1][1] ], [], [] ]
[1]번째 배열에 값을 두개 넣는 과정을 이후의 배열들에도 동일하게 반복하게 됩니다.