문제 : https://www.acmicpc.net/problem/2740
코드
N, M = map(int, input().split())
matA = []
matB = []
for _ in range(N):
matA.append(list(map(int, input().split())))
M, K = map(int, input().split())
for _ in range(M):
matB.append(list(map(int, input().split())))
matrix = [[0 for _ in range(K)] for _ in range(N)]
for n in range(N):
for k in range(K):
for m in range(M):
matrix[n][k] += matA[n][m] * matB[m][k]
for mat in matrix:
for j in mat:
print(j, end = " ")
print()
알아둘 것
행렬의 곱셈은 N*M 행렬과 M*K 행렬이 만나 N*K행렬을 만든다
'코딩테스트 > 백준 (python)' 카테고리의 다른 글
백준 / 7576번 / 토마토 / python 파이썬 (0) | 2024.09.05 |
---|---|
백준 / 1463번 / 1로 만들기 / DP / python 파이썬 (0) | 2024.09.05 |
백준 / 1260번 / DFS와 BFS / DFS, BFS / python 파이썬 (0) | 2024.09.04 |
백준 / 11047번 / 동전 0 / Greedy Algorithm / python 파이썬 (0) | 2024.09.03 |
백준 / 7785번 / 회사에 있는 사람 / python 파이썬 (0) | 2024.09.03 |