문제 설명
2차원 행렬 arr1과 arr2를 입력받아, arr1에 arr2를 곱한 결과를 반환하는 함수, solution을 완성해주세요.
제한 조건
- 행렬 arr1, arr2의 행과 열의 길이는 2 이상 100 이하입니다.
- 행렬 arr1, arr2의 원소는 -10 이상 20 이하인 자연수입니다.
- 곱할 수 있는 배열만 주어집니다.
입출력 예
arr1 |
arr2 |
return |
[[1, 4], [3, 2], [4, 1]] |
[[3, 3], [3, 3]] |
[[15, 15], [15, 15], [15, 15]] |
[[2, 3, 2], [4, 2, 4], [3, 1, 4]] |
[[5, 4, 3], [2, 4, 1], [3, 1, 1]] |
[[22, 22, 11], [36, 28, 18], [29, 20, 14]] |
def solution(arr1, arr2):
# 1번째 매트릭스의 row, col
arr1_y, arr1_x = len(arr1), len(arr1[0])
# 2번째 매트릭스의 row, col
arr2_y, arr2_x = len(arr2), len(arr2[0])
# 결과 매트릭스 생성
answer = [[0] * arr2_x for _ in range(arr1_y)]
# 1번째 매트릭스의 row
for y_1 in range(arr1_y):
# 2번째 매트릭스의 col
for x_2 in range(arr2_x):
# 1번째 매트릭스의 col == 2번째 매트릭스의 row
for mul in range(arr1_x):
answer[y_1][x_2] += arr1[y_1][mul] * arr2[mul][x_2]
# 결과 매트릭스 return
return answer