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

矩阵乘法计算量估算

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

import sys

def matrix_multiply_operand(dimensions,order):
    stack = []
    res = 0

    matrix_map = {chr(ord('A')+i): dimensions[i] for i in range(n)}

    for char in order:
        if char.isalpha():
            stack.append(matrix_map[char])
        elif char == ')':
            matrix_b = stack.pop()
            matrix_a = stack.pop()
            res += matrix_a[0] * matrix_a[1] * matrix_b[1]
            stack.append([matrix_a[0],matrix_b[1]])

    return res

lines = sys.stdin.readlines()
n = int(lines[0].strip())
dimensions = []
for i in range(1,n+1):
    dimensions.append(list(map(int,lines[i].split())))
order = lines[-1].strip()

print(matrix_multiply_operand(dimensions,order))

带括号的运算就用栈!!!

带括号的运算就用栈!!!

带括号的运算就用栈!!!

全部评论

相关推荐

02-25 19:38
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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