您的位置:首页 > 其它

nyoj-2-括号配对问题

2013-08-08 21:36 399 查看
#include<stdio.h>

#include<string.h>

char a[10010],b[10010];

int main()

{

 int s;

 scanf("%d",&s);

 while(s--)

 {

  int n,i,m,b1;

  scanf("%s",a);

  n=strlen(a);

  memset(b,0,sizeof(b));

  b1=1;m=0;

  if(n%2==0)

 {

    for(i=0;i<n;i++)

  {

           if(a[i]=='['||a[i]=='(')

     {

      b[b1++]=a[i];

     }

      if(a[i]==']')

     {

      if(b[--b1]=='[')

      m=0;

      else m=1;

     }

     if(m==1)

     {

      printf("No\n");

      break;

     }

     if(a[i]==')')

     {

      if(b[--b1]=='(')

      m=0;

      else m=1;

     }

     if(m==1)

     {

      printf("No\n");

      break;

     }

  }

    if(m==0)

     printf("Yes\n");

 }

  else

   printf("No\n");

 }

 return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: