Programmersマトリクスの乗算(Python)



問題の説明


2 Dマトリクスarr 1とarr 2を入力し、arr 1にarr 2を乗じた結果の関数を返します.

せいげんじょうけん

  • 行列arr 1、arr 2の行および列の長さは、2または100より大きい.
  • 行列arr 1,arr 2の要素は−10または20以下の自然数である.
  • に乗算された配列しか与えられません.
  • I/O例


    arr1arr2return[[1, 4], [3, 2], [4, 1]][[3, 3], [3, 3]][[15, 15], [15, 15], [15, 15]][[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]]

    ハーモニー

    # (1)
    
    def solution(arr1, arr2):
        # (2)
        answer = [ len(arr2[0])*[0] for i in range (len(arr1)) ]
    
        for i in range (len(answer)):
            for j in range (len(answer[i])):
                for k in range (len(arr1[i])):
                    answer[i][j] += arr1[i][k]*arr2[k][j]
    
        return answer
    
    arr1 = [[2, 3, 2], [4, 2, 4], [3, 1, 4]]
    arr2 = [[5, 4, 3], [2, 4, 1], [3, 1, 1]]
    print(solution(arr1, arr2)) # 결과 예 : [[22, 22, 11], [36, 28, 18], [29, 20, 14]] 
    (1):arr 1がmnの寸法であり、arr 2がabの寸法であると基本的に仮定すると、2つのマトリクスの積と寸法はm*bである.
    (2):最初に返す値の答えのサイズを指定します.

    📝 結果



    😃 に感銘を与える

  • 行列は聞いたことがありますが、行列の乗算原理がどのように作用しているのか分からないので、ネット検索して行列を求める乗算の仕方を身につけました.数学の問題を防ぐために、コードテストでよく現れる数学は勉強すべきだと思います.
  • 👍 Irishのすべてのコードを表示


    -> Irish Github