hrbust-1170-语法检查-括号匹配【栈应用】
2018-02-05 22:26
232 查看
hrbust-1170-语法检查-括号匹配【栈应用】
检索括号匹配
学会多行输入,每行检测方式。
还有栈。【先进后出】【后进先出】
检索括号匹配
学会多行输入,每行检测方式。
还有栈。【先进后出】【后进先出】
#include<bits/stdc++.h> using namespace std; char a[10000][10000]; int main() { while(scanf("%s",&a[0])!=EOF) { int i=0; while(1) { i++; scanf("%s",a[i]); if(strcmp(a[i],"Ctrl+Z")==0) break; } int flag=1; stack<char>s[2]; for(int j=0; j<=i; j++)//i+1行 { for(int k=0; a[j][k]!='\0'; k++) { if(a[j][k]=='(') { s[0].push(a[j][k]); continue; } if(a[j][k]=='{') { s[1].push(a[j][k]); continue; } if(a[j][k]==')'&&!s[0].empty()) { s[0].pop(); continue; } if(a[j][k]==')'&&s[0].empty()) { flag=0; continue; } if(a[j][k]=='}'&&!s[1].empty()) { s[1].pop(); continue; } if(a[j][k]=='}'&&s[1].empty()) { flag=0; continue; } } } if(flag) { if(s[0].empty()&&s[1].empty()) cout<<"Right"<<endl; else cout<<"Wrong"<<endl; } else cout<<"Wrong"<<endl; } }
相关文章推荐
- 哈理工 1170 语法检查-括号匹配【stack应用】【水题~】
- 数据结构的应用——使用栈实现字符串括号匹配检查
- hrbust 1170 语法检查
- 栈的经典应用之一:括号匹配检查
- 看数据结构写代码(11)栈的应用(二) 括号匹配的检查
- 堆栈数据结构应用之括号匹配检查(算法3.2.2)
- 栈的应用2:检查括号匹配
- 括号匹配---栈的应用
- 卡特兰数定义及其几个常用的应用(附例子"括号匹配"代码)+应用总结
- 堆栈应用括号匹配实验
- 算法学习——栈的应用之括号匹配
- 【数据结构】栈的应用--括号的匹配(c++)
- 数据结构之 栈的应用 括号匹配
- 顺序栈的应用-括号匹配
- 栈的应用-括号的匹配
- 数据结构与算法 -- 栈的应用(进制转换、括号匹配)
- hrbust 1054 、、、括号匹配
- 栈的应用之括号匹配
- hrbust 哈理工oj 1834 括号匹配【好题】【floyd+dp】
- 栈的应用之括号匹配