#include <iostream> #include <string> #include <vector> #include <stack> int main() { // deal with input std::string in, out; char c; while(std::cin >> c){ in += c; } std::stack<char> stk; for(int i = 0; i < in.size(); ++i) { if(std::isalpha(in[i])) { out += in[i]; continue; } if(in[i] == '(' || stk.empty()) { stk.push(in[i]); continue; } if(in[i] == ')') { while(stk.top() != '(') { out += stk.top(); stk.pop(); } out += stk.top(); stk.pop(); continue; } if(in[i] == '+' || in[i] == '-') { while(!stk.empty() && stk.top() != '(') { out += stk.top(); stk.pop(); } stk.push(in[i]); } else { while(!stk.empty() && stk.top() != '(' && (stk.top() == '*' || stk.top() == '/')) { out += stk.top(); stk.pop(); } stk.push(in[i]); } } while(!stk.empty()) { out += stk.top(); stk.pop(); } std::cout << out << std::endl; return 0; } // 64 位输出请用 printf("%lld")