题解 | #矩阵乘法#
矩阵乘法
https://www.nowcoder.com/practice/ebe941260f8c4210aa8c17e99cbc663b
#令第一个矩阵为A,第二个矩阵为B #A的行数为A_m,列数为A_n;B的行数为B_m,列数为B_n; A_m = int(input()) A_n = B_m = int(input()) B_n = int(input()) #加载第一个矩阵 A = [] i = 0 while i < A_m: A.append([int(i) for i in input().split()]) i += 1 #加载第二个矩阵 B = [] i = 0 while i < B_m: B.append([int(i) for i in input().split()]) i += 1 #A与B相乘得矩阵C #函数f(i,j),表示矩阵C第i行,第j列的值。i,j都是索引,从0开始。 def f(i:int,j:int,A:list,B:list)->int: Ai = A[i] #A的第i行元素 Bj = [i[j] for i in B] #B的第j列元素 result = 0 for i in range(len(Ai)): result += Ai[i] * Bj[i] return result C = [[f(i,j,A,B) for j in range(B_n)]for i in range(A_m)] for i in C: for j in i: print(j,end=' ') print()