행렬의 덧셈

Jtiiin:K·2023년 11월 23일
0
post-thumbnail

문제설명

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

제한조건

행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다.

정답

function solution(arr1, arr2) {
  let a1 = arr1.flat() // [1,2,2,3]
  let a2 = arr2.flat() // [3,4,5,6]
  let a3 = (a1.map((v,i)=> a1[i]+a2[i])) // [4,6,7,9]

  let a4 = []
  let size = arr1[0].length
  for(let i = 0; i < a3.length; i += size ){
    a4.push(a3.slice(i, i+size)) // [[4,6][7,9]]
  }
  return a4
}

solution([[1,2],[2,3]], [[3,4],[5,6]])

스마트한 정답은 아닌 것 같지만 일단 최대한 풀어본 것ㅎㅎ

  • flat : 중첩배열을 1차원 배열로 풀어줌
profile
호기심 많은 귀차니즘의 공부 일기

0개의 댓글