HJ69 题解 | #矩阵乘法#
矩阵乘法
https://www.nowcoder.com/practice/ebe941260f8c4210aa8c17e99cbc663b
#纯数学问题,模拟
x=int(input())#矩阵1的行
y=int(input())#矩阵1的列、矩阵2的行
z=int(input())#矩阵2的列
jz1=[]#矩阵1
jz2=[]#矩阵2
# ans=[[0]*z]*x#结果
ans=[[0 for k in range(z)] for i in range(x)]
#接收矩阵
for i in range(x):
jz1.append([int(j) for j in input().split()])
for i in range(y):
jz2.append([int(j) for j in input().split()])
#计算结果
for i in range(x):#矩阵1的行
for j in range(y):#矩阵1的列、矩阵2的行
for k in range(z):#矩阵2的列
ans[i][k]+=jz1[i][j] * jz2[j][k]
#输出结果
for i in range(x):
for j in range(z):
print(ans[i][j],end=" ")
print()
AC代码以及思路如上,我就一个问题:为什么第10行的初始化,第8行那样写就不行,我测试过是可以正常初始化的,但是提交就过不了,很奇怪!
#华为##华为od##华为机试##华为od机试#华为HJ103所有解法 文章被收录于专栏
这是我准备华为od面试的专属专栏,我会把自己的解法更新在里面,我会尽量写清楚自己的思路以及多写关键注释,希望对阅读的人有帮助~~~
阿里云成长空间 743人发布