题解 | 矩阵乘法计算量估算
矩阵乘法计算量估算
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))
带括号的运算就用栈!!!
带括号的运算就用栈!!!
带括号的运算就用栈!!!
查看28道真题和解析