나의 답 :
def solution(arr1, arr2):
#arr1 * arr2가 안 되고,
#arr2 * arr1가 될 수도 있기 때문에 확인 후 바꾼다.
if len(arr1[0]) != len(arr2):
arr1,arr2 = arr2, arr1
x=len(arr1)
y=len(arr2)
z=len(arr2[0])
# x*y 행렬과 y*z 행렬의 곱 => x*z 행렬
#x*z의 빈 행렬 만들기
answer = []
for i in range(x):
temp=[]
for j in range(z):
temp.append(0)
answer.append(temp)
#값 넣기
for i in range(x):
for j in range(y):
for k in range(z):
answer[i][k]+=arr1[i][j]*arr2[j][k]
return answer
다른 사람의 답 :
import numpy as np
def productMatrix(A, B):
x = np.array(A)
y = np.array(B)
answer = x*y
return answer.tolist()
실제 코테에서 넘파이 써도 되나?
'공부 > 코딩테스트' 카테고리의 다른 글
[프로그래머스] 최솟값 만들기(파이썬) (0) | 2022.01.05 |
---|---|
[프로그래머스] 피보나치 수(파이썬) (0) | 2022.01.04 |
[프로그래머스] N개의 최소공배수(파이썬) (0) | 2022.01.01 |
[프로그래머스] JadenCase 문자열 만들기(파이썬) (0) | 2021.12.30 |
[프로그래머스] 로또의 최고 순위와 최저 순위(파이썬) (0) | 2021.12.29 |