프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
1. 문제
2차원 행렬 arr1과 arr2를 입력받아, arr1에 arr2를 곱한 결과를 반환하는 함수, solution을 완성해 주세요.
제한사항
- 행렬 arr1, arr2의 행과 열의 길이는 2 이상 100 이하입니다.
- 행렬 arr1, arr2의 원소는 -10 이상 20 이하인 자연수입니다.
- 곱할 수 있는 배열만 주어집니다.
입출력 예
arr1 | arr2 | return |
[[1, 4], [3, 2], [4, 1]] | [[3, 3], [3, 3]] | [[15, 15], [15, 15], [15, 15]] |
[[2, 3, 2], [4, 2, 4], [3, 1, 4]] | [[5, 4, 3], [2, 4, 1], [3, 1, 1]] | [[22, 22, 11], [36, 28, 18], [29, 20, 14]] |
2. 정답 풀이
풀이 전략
- 행렬곱 계산 방법대로 로직 작성
행렬곱
Matrix Multiplication 행렬 의 곱셈은 여타 행렬의 연산과 같이 '크기가 맞는' 경우에만 정의되는데
namu.wiki
- m x r, r x n 행렬을 곱하면 m x n 행렬 리턴
function solution(arr1, arr2) {
let result = [];
for(let i=0; i<arr1.length; i++) {
const temp = [];
for(let j=0; j<arr2[0].length; j++) {
let num = 0;
for(let k=0; k<arr1[0].length; k++) {
num += arr1[i][k] * arr2[k][j];
}
temp.push(num)
}
result.push(temp)
}
return result;
}
[프로그래머스] 할인 행사 (LV2 - JavaScript)
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 1. 문제XYZ 마트는 일정한 금액을 지불하면 10일 동안 회원 자격을 부여합
dev-hpk.tistory.com
[프로그래머스] n^2 배열 자르기 (LV2 - JavaScript)
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 1. 문제정수 n, left, right가 주어집니다. 다음 과정을 거쳐서 1차원 배열을
dev-hpk.tistory.com
'코딩 테스트 > 프로그래머스(LV2)' 카테고리의 다른 글
[프로그래머스] 기능개발 (LV2 - JavaScript) (3) | 2024.11.13 |
---|---|
[프로그래머스] [1차] 캐시 (LV2 - JavaScript) (6) | 2024.11.12 |
[프로그래머스] 할인 행사 (LV2 - JavaScript) (2) | 2024.11.10 |
[프로그래머스] n^2 배열 자르기 (LV2 - JavaScript) (3) | 2024.11.10 |
[프로그래머스] 멀리 뛰기 (LV2 - JavaScript) (1) | 2024.11.09 |