문제 설명 |
행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요. |
제한 조건 |
행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다. |
function solution(arr1, arr2) {
var answer = [];
for (let i =0; i<arr1.length; i++){ //각 배열의 0번인덱스부터 더하기 위한 for문
let arr = [] //arr을 비운 뒤 answer에 push해야 새로운 값을 넣을 수 있음.
for(let j=0; j<arr1[i].length; j++){
//j가 입력배열의 [i]까지 증가해야 배열속 배열들의 합을 구할 수 있음
arr.push(arr1[i][j] + arr2[i][j]) //빈배열에 행렬 합 입력
}
answer.push(arr)
}
return answer;
}
function solution(arr1, arr2) {
var answer = [[]];
for (let i =0; i<arr1.length; i++){
let arr = []
for(let j=0; j<arr1.length; j++){ //여기 최종값 틀림
arr.push(arr1[i][j] + arr2[i][j])
}
answer.push(arr[i]) //arr은 i for문 에서 초기화 되는데 [i]를 넣으면 안됨....
}
return answer;
}
행렬합이 헷갈려서 내부 반복문의 최종값을 틀리게 설정했다.
answer에 push하는 값도 틀렸다.
첫 코드를 작성하고 이리저리 고쳐보다가 결국 다른 사람이 푼 답안을 보았는데..
조금만 더 생각하면 풀 수 있었던 걸 작은 것들때문에 틀렸던 것이 억울했다.
'1차 공부 > 알고리즘' 카테고리의 다른 글
부족한 금액 계산하기 (0) | 2022.11.23 |
---|---|
x만큼 간격이 있는 n개의 숫자 (0) | 2022.11.22 |
핸드폰 번호 가리기 (0) | 2022.11.22 |
평균 구하기 (0) | 2022.11.22 |
음양 더하기 (0) | 2022.11.22 |