壶关
//#include<bits/stdc++.h>
#include<iostream>
#include<math.h>
#include<cstring>
#include<string.h>
#include<algorithm>
#include<stack>
#include<stdio.h>
using namespace std;
stack<char> a;
string s;
int r(char c)
{
if(c=='*' || c=='/')
{
return 2;
}
if(c=='+' || c=='-')
{
return 1;
}
if(c=='(')
{
return 0;
}
}
int main()
{
cin>>s;
for(int i=0;i<s.size();i++)
{
if(s[i]==')')a.push(s[i]);
else
{
if(s[i]=='+' || s[i]=='-' || s[i]=='*' || s[i]=='/')
{
while(!a.empty() && r(s[i])<=r(a.top()))
{
cout<<a.top();
a.pop();
}
}
else
{
if(s[i]==')')
{
while(1)
{
if(a.top()!='(')break;
cout<<a.top();
a.pop();
}
}
else cout<<s[i];
}
}
}
return 0;
}