在生日party上,当聊到lqq今年生日想收到什么生日礼物时,lqq向你转发了一条新闻:“2022年1月,AMD发布了基于Zen3架构的线程撕裂者5000系列CPU,其中的旗舰型号5995WX具有64核心128线程。”
lqq希望能用这台电脑来飞速完成他的毕设,但他不知道这种CPU计算到底有多快。假设lqq手中现在有一台搭载5995WX的电脑,现在他希望使用这台电脑计算一个表达式的值
由于线程撕裂者的线程之间可以互不干扰的运行,所以它最多可以同时计算128个四则运算(+,-,*,/),每一次四则运算耗时1ns
比如:
在表达式中,它可以先同时计算和再计算,总共耗时2ns
但是,在表达式中,它不会先同时计算和,而是会分步计算,总共耗时2ns
注意:该计算机不会通过交换律、结合律等策略简化运算。这代表,每组连续加减或连续乘除必须从左向右依次计算。比如:(3ns)不会被简化成(2ns)。实际的运算顺序参考下图:
简单来说,后缀表达式中连续两个数和一个算符即可直接运算,比如说,后缀表达式是。其中的,,可以同时计算出来,得到,然后进行下一轮计算。
又简单来说,按照运算顺序给表达式补全所有括号,这个CPU可以同时计算所有同级括号内的计算。比如
(以上解释等价,但如果你正确按照Hint里的那种数据结构做,是绝对正确的)
##不建议使用暴力,可能会比较复杂##
请求出表达式的值与计算机求值所消耗的时间(只考虑运算花费的时间,其他耗时忽略不计)