Problem
행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요.
제한 조건
- 행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다.
Solution
function solution(arr1, arr2) {
let answer = [];
let a = [];
for(let i = 0; i < arr1.length; i++){
for(let j = 0; j < arr1[i].length; j++){
a.push(arr1[i][j] + arr2[i][j]);
} answer.push(a);
a = [];
}
return answer;
}
비효율적으로 풀었나 싶어서 아래 풀이랑 비교했는데 시간이나 메모리측에서 크게 차이는 안 났으나 아래가 좀 더 코드가 간결하고 시간, 메모리 측에서도 더 나은 코드였다.
function solution(A,B){
return A.map((arr1, idx1) => arr1.map((val, idx2) => val+B[idx1][idx2]));
}
'프로그래머스 (JS) > Lv. 1' 카테고리의 다른 글
[Programmers / JS] 68935번 - 3진법 뒤집기 (0) | 2023.03.17 |
---|---|
[Programmers / JS] 12906번 - 같은 숫자는 싫어 (0) | 2023.03.17 |
[Programmers / JS] 12918번 - 문자열 다루기 (0) | 2023.03.16 |
[Programmers / JS] 77884번 - 약수의 개수와 덧셈 (0) | 2023.03.16 |
[Programmers / JS] 86051번 - 없는 숫자 더하기 (0) | 2023.03.15 |