#6671. 计算器 普及/提高−

时间限制:1000 ms 内存限制:128 MiB 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: zyl

题目描述

对于计算器,相信每个人都不陌生,那么一个计算器的算法到底是怎么实现的呢?

现在请你实现一个计算器算法,支持 +、-、*、/ 的优先级进行计算(先乘除后加减),并且要支持带小括号的运算。

题目保证算式中的数字全是整数,但是最终的答案是实数,所以输出时要保留两位小数。

输入格式

一行字符串,其中只包含数字、+、-、*、/、(、)等字符,保证字符串表示的等式合法且可以计算

输出格式

一个实数,表示计算结果,保留两位小数输出

样例

样例输入 1

1+2*3-4*5/6

样例输出 1

3.67

样例输入 2

((1+1)*3+2)*2-10

样例输出 2

6.00

数据范围与提示

输入的算式字符串不超过1000

算式中的数字都在int范围内,最后的结果也在iny范围内