不同于市面上的用c++写的noj,此文章由c写,符合在校生需求,且附有注释,且看可可我慢慢更新。
不知道为啥,本代码无法在vs上运行。
思路:
每有一个括号对应的计数器加1或减1。利用strlen函数获取长度进行循环判断。
#include <stdio.h>
#include <string.h>
int main()
{
int i=0,b=0,c=0,d=0;
char a[1000];
scanf("%s",a);
int len = strlen(a);
for (i = 0; i < len; i++)
{
if (a[i] == '(')
{
b++;
}
else if (a[i] == '[')
{
c++;
}
else if (a[i] == '{')
{
d++;
}
else if (a[i] == ')')
{
b--;
}
else if (a[i] == ']')
{
c--;
}
else if (a[i] == '}')
{
d--;
}
else
{
continue;
}
}
if (b == 0 && c == 0 && d == 0) printf("yes");
else printf("no");
return 0;
}