https://school.programmers.co.kr/learn/courses/30/lessons/12949
프로그래머스
SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
수학의 행렬의 곱셈을 구현하는 문제이다.
- 행렬의 곱셈 : 두 행렬을 곱해서 새로운 행렬을 만드는 연산

def solution(arr1, arr2):
r1 = len(arr1) # arr1 의 행의 길이 M
c1 = len(arr1[0]) # arr1 의 열의 길이 K
r2 = len(arr2) # arr2 의 행의 길이 K
c2 = len(arr2[0]) # arr2 의 열의 길이 N
# arr1(M*K) * arr2(K*N) = answer (M*N)
answer = [[0] * c2 for _ in range(r1)]
# 첫 번째 행렬 arr1의 각 행과 두 번째 행렬 arr2 의 각 열에 대해
for i in range(r1):
for j in range(c2):
for k in range(c1): # 두 행렬의 값을 곱해 결과 리스트에 더함
answer[i][j] += arr1[i][k] * arr2[k][j]
return answer'개발 > 코딩테스트' 카테고리의 다른 글
| [Softeer] 연탄 배달의 시작 (0) | 2024.02.24 |
|---|---|
| [프로그래머스] 캐릭터의 좌표 (0) | 2024.02.23 |
| [Softeer] 위험한 효도 (0) | 2024.02.22 |
| [Softeer] 근무 시간 (0) | 2024.02.22 |
| [프로그래머스] 모의고사 (0) | 2024.02.22 |


























