#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());
        };
    }
};