7-2 括号配对
分数 30
全屏浏览题目
切换布局
作者 sy
单位 宁波财经学院
设表达式中允许包含3种括号:圆括号、方括号和大括号。即小括号、中括号和大括号。 编写一个算法来判断表达式中的括号是否正确配对,要求利用栈的结构实现。
输入格式:
输入一行带圆括号、方括号和大括号的字符串。
输出格式:
若匹配,输出yes。若不匹配,输出no。。
输入样例:
在这里给出一组输入。例如:
([1+2])
输出样例:
在这里给出相应的输出。例如:
yes
输入样例:
在这里给出一组输入。例如:
([
输出样例:
在这里给出相应的输出。例如:
no
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
#include <iostream>
using namespace std;
int main(){
char ch[1000];
scanf("%s",&ch);
int a1=0,a2=0,b1=0,b2=0,c1=0,c2=0;
for(int i=0;ch[i]!='\0';i++){
if(ch[i]=='(')
a1++;
if(ch[i]==')')
a2++;
if(ch[i]=='[')
b1++;
if(ch[i]==']')
b2++;
if(ch[i]=='{')
c1++;
if(ch[i]=='}')
c2++;
}
if(a1==a2&&b1==b2&&c1==c2)
printf("yes");
else
printf("no");
return 0;
}