본문 바로가기

알고리즘/Level - 1

프로그래머스 / 행렬의 덧셈 (Javascript)

행렬의 덧셈

 

문제 설명

행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요.

제한 조건
  • 행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다.
입출력 예
arr1                         arr2                    return
[[1,2],[2,3]] [[3,4],[5,6]] [[4,6],[7,9]]
[[1],[2]] [[3],[4]] [[4],[6]]

 


풀이

 

반복문 돌려서 찾는 방법

 

이번 문제는 생각하면 할수록 헷갈렸던 문제였고

감이 잘 안잡혀서 구글의 도움을 좀 많이 받았던 문제임

 

만약 [[1,2],[3,4]] 라면

for로 arr1을 돌린 후 [1,2] [3,4]를 한번씩 돌린 후 newArr를 만들어놓고 

arr1을 돌린 [1,2]부분을 반복문을 한번 더 쓰는 것 같음

newArr에 arr1[i][j]부분과 arr2[i][j]부분을 더한걸 푸쉬

푸쉬받은 newArr를 answer로 다시 푸쉬하는 방식..?

 

아직도헷갈림

 

 

다른 풀이

 

map 함수를 써서 간단하게 정리해놓은 방법임

 

map() 함수는 값과 인덱스를 인자로 받아 자동으로 for문을 돌려 값을 빼도록 해준다고 함..

 

공부하자