반응형
행렬의 곱셈
행렬의 곱셈 풀이하는 영상 !
문제 설명
2차원 행렬 arr1과 arr2를 입력받아, arr1에 arr2를 곱한 결과를 반환하는 함수, solution을 완성해주세요.
제한 조건
- 행렬 arr1, arr2의 행과 열의 길이는 2 이상 100 이하입니다.
- 행렬 arr1, arr2의 원소는 -10 이상 20 이하인 자연수입니다.
- 곱할 수 있는 배열만 주어집니다.
입출력 예
정답 풀이 코드
function solution(arr1, arr2) {
let y_arr1 = arr1.length; // arr1의 y축 길이(세로 축 길이)
let x_arr2 = arr2[0].length; // arr2의 x축 길이(가로 축 길이)
let y_arr2 = arr2.length; // arr2의 y축 길이(세로 축 길이)
let answer = [] //전체 배열
for(let i=0; i<y_arr1; i++){ //arr1의 y축 길이만큼 반복문을 돌린다. 전체 배열의 길이가 됨
let result = [] //하나의 배열
for(let j=0; j<x_arr2; j++){ //arr2의 x축 길이만큼 반복문을 돈다. 작은 배열의 길이가 됨
let sum = 0; // 곱한 값을 더할 것임
for(let k = 0; k<y_arr2; k++){ //arr1의 가로축 길이 혹은 arr2의 세로축 길이만큼!
sum+= arr1[i][k] * arr2[k][j]
}
result.push(sum) // 작은배열에 다 더해진 값을 push
}
answer.push(result) // 큰 배열에 작은 배열을 psuh
}
return answer; //큰 배열 return
}
반응형
'알고리즘 문제 풀기' 카테고리의 다른 글
[프로그래머스] 할인 행사 javascript (0) | 2023.06.22 |
---|---|
[프로그래머스] 튜플 javascript (0) | 2023.06.20 |
[프로그래머스] 기능개발 javascript (0) | 2023.06.20 |
[프로그래머스] 의상 javascript (0) | 2023.06.14 |
[프로그래머스] 1차 캐시 javascript (0) | 2023.06.08 |