📖 연습문제 > 행렬의 곱셈

📖What I thought

  • 고딩 때 행렬을 안 배운 나는 행렬의 곱이 너무 헷갈리고 어렵다… ㅜㅡㅜ 근데 사실 행렬 곱만 알면 코드 자체는 쉬웠음 행렬 곱 행과 열 길이만 조금 조심하면 굳!!

📖풀이

📎구현

def solution(arr1, arr2):
    m, r, n = len(arr1), len(arr2), len(arr2[0])
 
    matrix = [[0 for _ in range(n)] for _ in range(m)]
    
    for i in range(m):
        for j in range(n):   
            tmp = 0 # value of [i][j]
            for k in range(r):
                tmp += arr1[i][k] * arr2[k][j] # 행 하나 열 하나 순서대로 곱해서 더하기
 
            matrix[i][j] = tmp
        
    # 행렬 출력
    '''
    for i in range(m):
        for j in range(n):
            print(matrix[i][j], end=' ')
    '''     
    
    return matrix

📖What I learned

  • 행렬 곱은 행 하나 열 하나 순서대로 요소오소 곱해서 더하기!!!!!! 를 기억하자~~~~
  • 행렬 곱은 1번의 행 길이 2번의 열 길이 동일해야 할 수 있다는 것도 기억하장

📖관련 지식