#include #include #include using namespace std; stack st; string s; int ls,ap[300]; void ok() { int i,j; for(i=0;i0) { if(!st.empty() &&st.top()=='|' && s[i]=='|') st.pop(); else st.push(s[i]); } else { if(!st.empty() && -ap[st.top()]==ap[s[i]]) { st.pop(); } else { cout<<"NO\n"; return ; } } } cout<<"YES\n"; return ; } int main() { int n,i,j; ap['(']=1;ap[')']=-1; ap['[']=2;ap[']']=-2; ap['{']=3;ap['}']=-3; ap['|']=4; cin>>n; for(i=1;i<=n;i++) { cin>>s; ls=s.size(); ok(); } }