rt,虽然提交不了,但本地测样例,第三组错误了
#include<bits/stdc++.h>
using namespace std;
int n;
char S[131];
int readln(char *s)
{
int len=0,c;
while((c=getchar())!=10&&c!=13&&c!=EOF)
s[len++]=c;
s[len]=0;
return len;
}
int main()
{
freopen("1.in","r",stdin);
freopen("1.out","w",stdout);
cin>>n;
for(int i=1;i<=n;i++)
{
stack<char> s;
s.push('#');
bool flg=true;
int l=readln(S);
for(int j=0;j<=l-1;j++)
{
if(S[i]==')')
{
if(s.top()!='(')
{
flg=false;
}
else
{
s.pop();
}
}
if(S[i]==']')
{
if(s.top()!='[')
{
flg=false;
}
else
{
s.pop();
}
}
if(S[i]=='('||S[i]=='[')
{
s.push(S[i]);
}
}
if(s.top()!='#'||!flg)
{
puts("No");
}
else
{
puts("Yes");
}
}
return 0;
}