描述
给定一个字符串描述的算术表达式,计算出结果值。
输入字符串长度不超过 100 ,合法的字符包括 ”+, -, *, /, (, )” , ”0-9” 。
数据范围:运算过程中和最终结果均满足∣val∣≤2^31−1 ,即只进行整型运算,确保输入的表达式合法
输入描述:
输入算术表达式
输出描述:
计算出结果值
示例1
输入:
400+5
输出:
405
#include<cstdio>
#include<string>
#include<map>
#include<stack>
using namespace std;
map<char,int> myMap={
{'$',0},
{'+',1},{'-',1},
{'*',2},{'/',2}
};
stack<int> numStack;
stack<char> opStack;
int cal(char op,int left,int right)
{
int res;
switch (op) {
case '+':res=left+right;break;
case '-':res=left-right;break;
case '*':res=left*right;break;
case '/':res=left/right;break;