1. 프로그래머스 - 행렬의 덧셈
문제는 주어지는 행렬 arr1, arr2를 입력 받아서, 행렬 덛셈의 결과를 반환하는 함수를 작성한다.
예를 들어
arr1 | arr2 | return |
[[1,2], [2,3]] | [[3,4],[5,6]] | [[4,6],[7,9]] |
[[1], [2]] | [[3], [4]] | [[4], [6]] |
표를 돌려서 그려보면
arr1 | [[1,2], [2,3]] | [[1], [2]] |
arr2 | [[3,4], [5,6]] | [[3], [4]] |
return | [[4,6], [7,9]] | [[4], [6]] |
세로로 더해서 나오는 결과를 만드는 함수를 작성하면 된다.
작성한 코드는 다음과 같다.
function solution(arr1, arr2) {
const answer = [];
for (let i = 0; i < arr1.length; i ++) {
let arr = [];
for (let j = 0; j < arr1[i].length; j ++) {
arr.push(arr1[i][j] + arr2[i][j])
}
answer.push(arr)
}
return answer;
}
행렬이기 때문에, 반복문을 이중으로 써야겠다는 생각을 먼저 했다.
그리고 행렬의 좌표를 떠올려서 반복문을 작성했고, 문제를 풀었다.
다른 사람 풀이는 map... 을 두번 써서 쭉 써서 끝내셨던데... 공부공부. 끄적끄적...
'리코딩 : 알고리즘' 카테고리의 다른 글
6. 프로그래머스 - 나누어 떨어지는 숫자 배열 (0) | 2021.09.16 |
---|---|
5. 프로그래머스 - 3진법뒤집기 (0) | 2021.09.15 |
4. 프로그래머스 - 실패율 (0) | 2021.09.14 |
3. 프로그래머스 - 기능개발 (0) | 2021.09.13 |
2. 프로그래머스 - K번째 수 (0) | 2021.09.11 |