HJ70 题解 | #矩阵乘法计算量估算#

矩阵乘法计算量估算

https://www.nowcoder.com/practice/15e41630514445719a942e004edc0a5b

#思路:按照括号从内到外计算,计算时把两个矩阵的行列数去重之后累乘就可以了
#关键在于怎么从内到外,可以以栈的思路来解决这个问题

def f(a,b):#由两个列表计算乘法次数
    return a[0]*a[1]*b[1]


dic={}#字典存储矩阵名称和大小
n=int(input())#矩阵个数
res=0#累加和
for i in range(n):
    dic[chr(ord("A")+i)]=[int(i) for i in input().split()]
# print(dic)
s=input()
stack=[]#存列表,矩阵的行列数
for i in s:
    if i.isalpha():#是字母就存对应的矩阵大小
        stack.append(dic[i])
    elif i==")":
        res+=f(stack[-2],stack[-1])#累加乘法次数
        stack.append([stack[-2][0],stack[-1][1]])#添加计算之后的矩阵大小
        stack.pop(-2)#删除用过的矩阵1
        stack.pop(-2)#还有一个记得删
print(res)

#华为##华为od##华为机试##华为od机试#
华为HJ103所有解法 文章被收录于专栏

这是我准备华为od面试的专属专栏,我会把自己的解法更新在里面,我会尽量写清楚自己的思路以及多写关键注释,希望对阅读的人有帮助~~~

全部评论

相关推荐

喜欢飞来飞去的雪碧在刷代码:可以试一试字节
点赞 评论 收藏
分享
04-17 18:32
门头沟学院 Java
野猪不是猪🐗:他跟你一个学校,你要是进来之后待遇比他好,他受得了?
点赞 评论 收藏
分享
虽然大家都在劝退读研,说读研以后也是打工,不如本科直接去打工,但随着现在研究生越来越多,很多企业招聘要求就会变成研究生起招,本科投递简历就会被卡,横向比较时也会因为"本科学历比不上研究生学历"被筛掉,而且你没发现劝退读研的基本都是读完研的人吗?而且进体制、国企等,研究生也比本科生升的快,他们拿着研究生文凭劝你一个本科生,可别当真了
球1个offer:每个行业都是不一定的,例如计算机开发岗,只要是92学历,完全可以冲互联网大厂,没进去抛开运气因素,就是不够努力,准备的晚没有实习等等。计算机算法岗还是要读研的,研究生是基本要求。现在太多人无脑考研了,因为本科秋招春招啥都没准备过,只能读研
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务