<내 코드>
def solution(arr1, arr2):
# 결과 행렬의 크기를 arr1의 행 수와 arr2의 열 수로 설정
result = [[0] * len(arr2[0]) for _ in range(len(arr1))]
# 행렬 곱셈 수행
for i in range(len(arr1)):
for j in range(len(arr2[0])):
for k in range(len(arr1[0])):
result[i][j] += arr1[i][k] * arr2[k][j]
return result
-> numpy 너무 마려운 문제였다.. 행렬 곱셈을 위해 요소마다 접근해서 곱해주는게 너무 번거롭다.
<정해코드>
def productMatrix(A, B):
return [[sum(a*b for a, b in zip(A_row,B_col)) for B_col in zip(*B)] for A_row in A]
'Algorithm > Programmers' 카테고리의 다른 글
[Programmers / Level2] 캐시 (0) | 2024.01.30 |
---|---|
[Programmers / Level2] 의상 (0) | 2024.01.29 |
[Programmers / Level2] 할인 행사 (2) | 2024.01.27 |
[Programmers / Level2] n^2 배열 자르기 (0) | 2024.01.26 |
[Programmers / Level2] 연속 부분 수열 합의 개수 (0) | 2024.01.25 |