#include
using namespacestd;intn;strings;void solve_son(queue&q,int bei,map&m)
{while(!q.empty())
{string ts =q.front();
q.pop();if(ts=="(")
{int left = 1,right = 0;
queuetq;while(left!=right)
{if(q.front()=="(")
left++;if(q.front()==")")
right++;if(left==right)break;
tq.push(q.front());
q.pop();
}
q.pop();
stringstream s1;string s2 =q.front();
s1<
s1>>beit;
q.pop();
solve_son(tq,bei*beit,m);
}else{
stringstream s1;string s2 =q.front();
s1<
s1>>beit;
q.pop();
m[ts]+= bei*beit;
}
}
}void solve(stack&st,map&m)
{
stackrt;while(!st.empty())
{
rt.push(st.top());
st.pop();
}
queueq;
stringstream s1;string s2 =rt.top();
s1<
s1>>bei;
rt.pop();while(rt.size())
{
q.push(rt.top());
rt.pop();
}
solve_son(q,bei,m);
}boolcheck()
{inti;
mapmleft;
mapmright;
stackst;for(i = 0;s[i]!=