Post

행렬의 덧셈

https://school.programmers.co.kr/learn/courses/30/lessons/12950

📔 문제 설명

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

💡 입출력 예

arr1arr2result
[[1,2],[2,3]][[3,4],[5,6]][[4,6],[7,9]]
[[1],[2]][[3],[4]][[4],[6]]

💻내가 작성한 코드

  • [ [ ], [ ] ] 중 가장 상단 배열의 길이 만큼 반복하는 반복문 작성
  • 반복문 안에 [[배열1],[배열2]] 배열1의 길이만큼 반복하는 반복문 작성
  • 배열1와 배열2의 값 더하는 로직 작성
1
2
3
4
5
6
7
8
9
10
11
function solution(arr1, arr2) {
  const answer = [];
  for (let i = 0; i < arr1.length; i++) {
    const result = [];
    for (let j = 0; j < arr1[i].length; j++) {
      result.push(arr1[i][j] + arr2[i][j]);
    }
    answer.push(result);
  }
  return answer;
}

💻다른 사람 코드

for문을 사용하지 않고 map()을 사용해서 간결하게 작성

1
2
3
function solution2(arr1, arr2) {
  return arr1.map((a, i) => a.map((b, j) => b + arr2[i][j]));
}
This post is licensed under CC BY 4.0 by the author.