STUDY/Algorithm

[프로그래머스_자바스크립트] Lv.2 행렬의 곱셈

ez1n 2023. 1. 16. 13:59

 

[Javascript_ 행렬의 곱셈]

 

 

프로그래머스

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

programmers.co.kr

 


 

<STUDY>

 

📢 문제 📢

 

2차원 행렬 arr1과 arr2를 입력받아, arr1에 arr2를 곱한 결과를 반환하는 함수, solution을 완성해주세요.

 

제한 조건
  • 행렬 arr1, arr2의 행과 열의 길이는 2 이상 100 이하입니다.
  • 행렬 arr1, arr2의 원소는 -10 이상 20 이하인 자연수입니다.
  • 곱할 수 있는 배열만 주어집니다.

 


 

<전체 코드>

 

function solution(arr1, arr2) {
  return arr1.map(function (row) {
    return row.map(function (item, i) {
      return row.reduce(function (sum, value, j) {
        return sum + value * arr2[j][i];
      }, 0);
    });
  });
}

 

 


 

처음에는 중첩 for 문을 사용하여 해결했다.

그런데 다른 분의 코드를 보고 map과 reduce만을 이용해서 간단하게 구현할 수 있다는 것을 알게 되었다.

 

세상에는 똑똑한 사람이 정말많은 것 같다..

 


 

🔆프로그래머스 Lv2. 행렬의 곱셈🔆

 

👉ez1n github 구경하기👈

 

 

ez1n - Overview

Front-End Developer. ez1n has 16 repositories available. Follow their code on GitHub.

github.com