반응형
https://www.acmicpc.net/problem/2740
행렬 곱셈 문제
행렬의 곱셈을 구해서 출력해보는 문제
행렬 연산 원리만 알면 쉽게 풀 수 있다.
📌 문제 접근 포인트
1. 행렬의 곱셈 연산에 대해 생각해보자.
2. 행렬은 A의 i 행 * B i 열 곱을 다 더한 형태로 되어있다.
3. 곱해서 출력하게 만들어주면 해결!
⚙ 내가 푼 정답 코드
def multi(a,b):
X = [[0]*K for _ in range(N)]
for i in range(N): # 행렬
for j in range(K):
for k in range(M):
X[i][j] += a[i][k]*b[k][j] #곱셈 연산
return X
import sys
N, M = map(int, sys.stdin.readline().split())
A = [list(map(int,sys.stdin.readline().split())) for _ in range(N)]
M, K = map(int, sys.stdin.readline().split())
B = [list(map(int,sys.stdin.readline().split())) for _ in range(M)]
for i in multi(A,B):
print(*i)
반응형
'알고리즘 풀이 > 백준' 카테고리의 다른 글
[백준 1492] 합 (python) (0) | 2023.04.09 |
---|---|
[백준 10830] 행렬 제곱 (python) (0) | 2023.04.09 |
[백준 15965] K번째 소수 (python) (0) | 2023.04.08 |
[백준 9735] 삼차 방정식 풀기 (python) (0) | 2023.04.08 |
[백준 4673] 셀프 넘버 (python) (0) | 2023.04.07 |
댓글