题解 | #矩阵乘法#

矩阵乘法

https://www.nowcoder.com/practice/ebe941260f8c4210aa8c17e99cbc663b

x = int(input())
y = int(input())
z = int(input())
diyige = []
for i in range(x):
    m = list(map(int,input().split()))
    diyige.append(m)
dierge = []
for i in range(y):
    m = list(map(int,input().split()))
    dierge.append(m)
shuchu = [[0]*z for i in range(x)]
for i in range(x):
    for j in range(z):
        zhongjian_1 = diyige[i]
        zhongjian_2 = []
        for k in range(y):
            zhi = dierge[k][j]
            zhongjian_2.append(zhi)
        zhongjianzhi = sum([zhongjian_1[z]*zhongjian_2[z] for z in range(len(zhongjian_1))])
        shuchu[i][j] = zhongjianzhi
for i in shuchu:
    print(' '.join([str(l) for l in i]))
按照定义来,先去第一个矩阵的那一行,再去另一个矩阵的那里列,相乘相加即可。就是时间复杂度太高。
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务