<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. 행렬의 곱셈🔆
'STUDY > Algorithm' 카테고리의 다른 글
[프로그래머스_자바스크립트] Lv.1 기사단원의 무기 / 약수 갯수 (0) | 2023.01.19 |
---|---|
[프로그래머스_자바스크립트] Lv.1 소수 구하기 / 에라토스테네스의 체, 조합 (0) | 2023.01.18 |
[프로그래머스_자바스크립트] Lv.2 n^2 배열 자르기 (0) | 2023.01.14 |
[프로그래머스_자바스크립트] Lv.2 영어 끝말잇기 (0) | 2023.01.13 |
[프로그래머스_자바스크립트] Lv.2 괄호 회전하기 / 스택, replace() (0) | 2023.01.11 |