본문 바로가기

코테

[프로그래머스] <행렬의 곱셈> 파이썬

programmers.co.kr/learn/courses/30/lessons/12949

 

코딩테스트 연습 - 행렬의 곱셈

[[2, 3, 2], [4, 2, 4], [3, 1, 4]] [[5, 4, 3], [2, 4, 1], [3, 1, 1]] [[22, 22, 11], [36, 28, 18], [29, 20, 14]]

programmers.co.kr

import numpy as np
def solution(arr1, arr2):
    a = arr1
    b = np.array(arr2).reshape(len(arr2), len(arr2[0])).transpose().tolist()
    answer = [[0] * len(b) for _ in range(len(a))]
    for i in range(len(a)) :
        for j in range(len(b)) :
            for k, l in zip(a[i],b[j]) :
                answer[i][j] += k*l
    
    return answer

정확성 테스트

테스트 1 통과 (2.76ms, 27.8MB)
테스트 2 통과 (53.78ms, 28.6MB)
테스트 3 통과 (62.75ms, 28.9MB)
테스트 4 통과 (1.37ms, 27.7MB)
테스트 5 통과 (41.73ms, 28.5MB)
테스트 6 통과 (24.80ms, 28.6MB)
테스트 7 통과 (1.45ms, 28MB)
테스트 8 통과 (0.52ms, 27.9MB)
테스트 9 통과 (0.43ms, 27.9MB)
테스트 10 통과 (42.91ms, 28.5MB)
테스트 11 통과 (3.66ms, 28.2MB)
테스트 12 통과 (0.64ms, 27.9MB)
테스트 13 통과 (31.01ms, 28.5MB)
테스트 14 통과 (64.78ms, 28.4MB)
테스트 15 통과 (18.15ms, 28.1MB)
테스트 16 통과 (5.77ms, 28.3MB)

채점 결과

정확성: 100.0

합계: 100.0 / 100.0