본문 바로가기
코테연습

156. 행렬의 덧셈 Javascript

by hxunz 2022. 9. 18.

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

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

1. 문제에 대한 이해

  • 우리가 풀어야 할 문제는 무엇인가?
     - 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환
  • 주어진 자료는 무엇인가?
     - 2개의 행렬 arr1과 arr2
  • 조건은 무엇인가?
     - 행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않는다.
     - 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과

2. 계획

  1. 같은 위치의 인덱스 값끼리 더한다. 

3. 실행

  • 풀이 계획을 실행하고, 각 단계가 올바른지 점검하라.
const solution = (arr1, arr2) => {
  // 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과
  // 같은 위치의 인덱스 값끼리 더한다
  let newArr = [];
  for (i = 0; i < arr1.length; i++) {
    let sum = [];
    for (j = 0; j < arr1[i].length; j++) {
      sum.push(arr1[i][j] + arr2[i][j])
    }
    newArr.push(sum);
  }
  return newArr;
}

test('newProcession', () => {
  expect(solution([[1, 2], [2, 3]], [[3, 4], [5, 6]])).toEqual([[4, 6], [7, 9]]);
  expect(solution([[1], [2]], [[3], [4]])).toEqual([[4], [6]]);
});

 

'코테연습' 카테고리의 다른 글

158. 점프와 순간 이동 Javascript  (0) 2022.09.18
157. 예상 대진표 Javascript  (0) 2022.09.18
155. 핸드폰 번호 가리기 Javascript  (0) 2022.09.18
154. 하샤드수 Javascript  (0) 2022.09.18
153. 평균 구하기 Javascript  (0) 2022.09.18

댓글