-
2740. [Python]행렬 곱셈Python_알고리즘/Silver V 2023. 3. 31. 20:27
1. 문제
https://www.acmicpc.net/problem/2740
2740번: 행렬 곱셈
첫째 줄에 행렬 A의 크기 N 과 M이 주어진다. 둘째 줄부터 N개의 줄에 행렬 A의 원소 M개가 순서대로 주어진다. 그 다음 줄에는 행렬 B의 크기 M과 K가 주어진다. 이어서 M개의 줄에 행렬 B의 원소 K개
www.acmicpc.net
2. 접근 방법
- 시간 제한: 1초
- 메모리 제한: 128MB
- 구현
3. 파이썬 코드
N,M = map(int,input().split()) # 첫번째 행렬 생성 matrix_1 = [] # 첫번째 행렬 값 입력 for _ in range(N): num_list = list(map(int,input().split())) matrix_1.append(num_list) L,K = map(int,input().split()) # 두번째 행렬 생성 matrix_2 = [] # 두번째 행렬 값 입력 for _ in range(L): num_list = list(map(int,input().split())) matrix_2.append(num_list) # 행렬 곱셈 for i in range(N): for l in range(K): total = 0 for j in range(M): total += (matrix_1[i][j]*matrix_2[j][l]) print(total, end=" ") print()
4. 문제를 풀고난 후 생각
- 행렬에 곱셈을 하는 방식과 어떻게 곱셈을 할지 등에 대해서 생각하고 출력하는 부분을 어떻게 조작해야 하는지 정도만 알아두면 쉽게 풀 수 있는 문제였다.
5. 문제를 푸는데 도움이 되는 지식
- 행렬 곱셈
- 이중 리스트
'Python_알고리즘 > Silver V' 카테고리의 다른 글
9625. [Python]BABBA (0) 2023.04.05 8979. [Python]올림픽 (0) 2023.04.04 2535. [Python]아시아 정보올림피아드 (0) 2023.03.29 1817. [Python]짐 챙기는 숌 (0) 2023.03.27 14916. [Python]거스름돈 (0) 2023.02.02