programmers/level1
[level1] - 행렬의 덧셈
태기의삶
2020. 4. 7. 15:57
<입출력 예>
arr1 | arr2 | return |
[[1,2],[2,3]] | [[3,4],[5,6]] | [[4,6],[7,9]] |
[[1],[2]] | [[3],[4]] | [[4],[6]] |
[ 풀이 ]
배열 arr1과 arr2가 존재하고 , 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 되어야 한다.
우선, arr1에 map()를 이용해 [1,2], [2,3], 0, 1로 배열과 인덱스를 가져온다.
그러고 나서, 나눈 배열을 다시 map()를 이용해 한번 더 나눈다. 그러면 1 0, 2 1, 2 0, 3 1 이렇게 출력될 것이다.
arr1을 나눈 각 원소를 item에 담고 인덱스 i, j를 이용해 item과 arr2[i][j]를 더해서 같은 행, 같은 열의 값을 서로 더한 결과를 출력한다.
[ code ]
function solution(arr1, arr2) {
return arr1.map( (arr, i) => arr.map((item, j) => item + arr2[i][j]));
}