import numpy as np
def solution(arr1, arr2):
arr1 = np.array(arr1)
arr2 = np.array(arr2)
answer = arr1@arr2
return answer.tolist()
numpy 쓰면 쉽게 해결 된다. 그리고 array는 리스트로 바꾸려면 list() 함수가 아니라 tolist() 메서드를 써야 한다.
그리고 행렬의 곱이 n x m , m x z 같은 형식이 아닌데도 가능한 이유는 numpy가 다 알아서 해결해주기 때문이다.
만약 1 x 3 , 1 x 2 행렬이 있다면 3 x 1, 1 x 2로 자체 변환해 계산해준다. 아마 이걸 브로드캐스팅이라고 했던 것 같기도..
'조열심 카테고리 > 알고리즘' 카테고리의 다른 글
| [프로그래머스] 실패율 (0) | 2022.10.12 |
|---|---|
| [프로그래머스] 두 큐 합 같게 만들기 (0) | 2022.10.12 |
| [프로그래머스] 모음사전 (0) | 2022.09.27 |
| [프로그래머스] 위장 (0) | 2022.09.27 |
| [프로그래머스] 피로도 (0) | 2022.09.27 |