#include <algorithm> #include <stack> #include <string> class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param tokens string字符串vector * @return int整型 */ int evalRPN(vector<string>& tokens) { // write code here stack<string> ss; if(tokens.size()==1) return stoi(tokens[0]); else { for(int i = 0;i <tokens.size();i++) { if(tokens[i]=="+" || tokens[i]=="-"||tokens[i]=="*"||tokens[i]=="/") { int tmp2 = stoi(ss.top()); ss.pop(); int tmp1 = stoi(ss.top()); ss.pop(); if(tokens[i]=="+") { ss.push(to_string(tmp1+tmp2)); } else if (tokens[i]=="-") { ss.push(to_string(tmp1-tmp2)); } else if (tokens[i]=="*") { ss.push(to_string(tmp1*tmp2)); } else if (tokens[i]=="/") { ss.push(to_string(tmp1/tmp2)); } } else { ss.push(tokens[i]); } } return stoi(ss.top()); }; } };