728x90

< 해결 방법 >

numpy 이용하려고 했지만 백준은 이를 지원하지 않았다. 반복문이 헷갈려서 구글링을 통해 해결했다.

 

import sys
 
 
k1 = [ ]
k2 = [ ]
 
 
N,M = map(int,sys.stdin.readline().rstrip().split(" "))
 
for i in range(0,N):
    k1.append(list(map(int,sys.stdin.readline().rstrip().split(" "))))
 
M,K= map(int,sys.stdin.readline().rstrip().split(" "))
 
for i in range(0,M):
    k2.append(list(map(int,sys.stdin.readline().rstrip().split(" "))))
 
 
# k1 = np.array(k1)
# k2 = np.array(k2)
 
# answer = np.dot(k1,k2)
 
 
# for i in answer:
#     print(*i)
 
#행렬 곱셈
C = [[0 for _ in range(K)] for _ in range(N)]
 
for n in range(N):
    for k in range(K):
        for m in range(M):
            C[n][k] += k1[n][m] * k2[m][k]
 
#출력문
for i in C:
    for j in i:
        print(j, end = ' ')
    print()
728x90

+ Recent posts