1. 문제 설명
행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요.
2. 제한 조건
행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다.
3. 예시
- 입력/출력
4. 풀이
- 중첩 반복문 활용
- 중첩 반목문을 몇번 쓰다보니 조금 익숙해졌다.
function solution(arr1, arr2) {
let answer = [];
//중첩 for문은 바깥쪽 for가 첫번째 회차를 돌면
//안쪽 for문은 종료 횟수까지 실행되고나서 다시 첫번째 for문으로 돌아감
for(let i = 0; i < arr1.length; i++) {
answer[i] = []; //초기화를 해주지 않으면 밑에서 반복된 값이 유지되어서 합이 늘어난다
for(let j = 0; j < arr1[i].length; j++){
answer[i][j] = arr1[i][j] + arr2[i][j];
}
}
return answer;
}
- push 활용
- push는 값을 0, 1, 2 .... 순서대로 배열에 넣어준다.
// push method 사용
function solution(arr1, arr2) {
var answer = [];
for(let i = 0; i < arr1.length; i++){ //[1,2][2,3]
let sum = [];
for(let j = 0; j < arr1[i].length; j++){
sum.push(arr1[i][j] + arr2[i][j])
}
answer.push(sum)
}
return answer;
}
- 관련 함수 참고
.push() : 배열의 맨 끝에 값을 추가 / 처음 값이 젤 처음에 위치
.unshift() : 배열의 맨 앞에 값을 추가 / 처음 값이 젤 마지막에 위치
.pop() : 배열의 맨 끝에 값을 제거
.shift() : 배열의 맨 앞에 값을 제거
'개발 공부 > 알고리즘' 카테고리의 다른 글
[프로그래머스 알고리즘] "부족한 금액 계산하기" JavaScript (0) | 2022.03.13 |
---|---|
[프로그래머스 알고리즘] x만큼 간격이 있는 n개의 숫자 JavaScript (0) | 2022.03.13 |
[프로그래머스 알고리즘] 핸드폰 번호 가리기JavaScript / substr(), substring(), slice() (0) | 2022.03.13 |
[프로그래머스 알고리즘] 평균 구하기 JavaScript (0) | 2022.03.13 |
[프로그래머스 알고리즘] 없는 숫자 더하기 JavaScript (0) | 2022.03.13 |