알고리즘 문제풀이
37. 행렬의 덧셈
가애야
2024. 6. 20. 09:54
????????????
나 이런거 모른다...
행렬의 덧셈
안에 인덱스들 위치에 맞게 더해주면 되는거같은데
... 그런거같은데
어떻게하는지 모르겠다..ㅎㅎ
내칭구 지티피야! 검색창아! 도와줘!
자자 친구들이 도와줬으니 이제 이해를 해야한다..
이해가 안가는것은 arr2는 어디갔는가? 였는데
arr1과 arr2가 동일한 크기를 가질 것이라는 가정 하에 문제를 해결한다고 한다.
arr2는 함수의 매개변수로 전달되었기 때문에 함수 내부에서 arr2에 접근하고 필요한 연산을 수행한다.
밑에 다른 사람 풀이를 보면 고차함수를 사용해서 간결하게 결과 도출
zip 함수는 두 시퀀스를 하나의 시퀀스로 결합한다.
arr1과 arr2의 각 시퀀스의 같은 위치에 있는 요소들을 튜플로 묶어준다.
예) arr1 = [[1, 2], [2, 3]] , arr2 = [[3, 4], [5, 6]] 일 때,
zip(arr1, arr2)는 [((1, 2), (3, 4)), ((2, 3), (5, 6))] 을 반환한다.
중첩된 map 함수 사용
첫번째 map 함수는 zip(arr1, arr2) 에 적용되어, 각 튜플 쌍을 처리한다.
내부의 zip($0, $1) 는 각 행의 튜플 쌍을 결합한다. 예를 들어 ($0, $1) 은 ([1, 2], [3, 4]) 와 같은 형태가 된다.
두번째 map 함수는 내부의 zip 된 각 튜플 쌍에 적용된다. 즉, 각 (a, b) 튜플에서 a + b 를 수행한다.