UVA 673 Parentheses Balance
来源:互联网 发布:软件认定企业查询 编辑:程序博客网 时间:2024/06/05 20:52
题意:给一个含'('、')'、'['、']'的括号序列,判断是否合法。
思路:用栈去判断一下。
1、如果遇到左括号就入栈。
2、如果遇到右括号
1)栈空 不合法
2)栈顶括号不与当前右括号匹配 不合法
3)匹配 出栈,继续执行。
序列扫一遍之后,如果栈为空则序列合法,否则就有多余的括号。
#include <iostream>#include <cstdio>#include <stack>#include <cstring>using namespace std;int T;char temp[130];bool check(char temp[]){ stack<char> s; int len = strlen(temp); for(int i = 0; i < len; i++) if ( temp[i] == '[' || temp[i] == '(' ) s.push(temp[i]); else { if( s.empty() || ( s.top() == '(' && temp[i] == ']' ) || ( s.top() == '[' && temp[i] == ')' ) ) return false; s.pop(); } if ( s.empty() ) return true; return false;}int main(){ cin>>T; getchar(); while(T--) { gets(temp); puts( check(temp)?"Yes":"No" ); } return 0;}
0 0
- UVa 673 Parentheses Balance
- uva 673 - Parentheses Balance
- Uva 673 Parentheses Balance
- uva 673 - Parentheses Balance
- UVa 673 Parentheses Balance
- UVa 673 - Parentheses Balance
- UVA 673 Parentheses Balance
- UVa 673 - Parentheses Balance
- UVA 673 Parentheses Balance
- UVa 673 - Parentheses Balance
- Uva-673-Parentheses Balance
- UVa 673 - Parentheses Balance
- uva 673Parentheses Balance
- uva-673 Parentheses Balance
- UVA 673 Parentheses Balance
- UVa 673 - Parentheses Balance
- uva 673 - Parentheses Balance
- uva 673 Parentheses Balance
- 深度学习系列(3.2)——神经网络-sigmoid 神经元
- Android 自定义 HorizontalScrollView 打造再多图片(控件)也不怕 OOM 的横向滑动效果
- 浅谈OC运行时(RunTime)
- 登录模块相关代码分析
- Git常用命令
- UVA 673 Parentheses Balance
- 1465 不容易系列之一
- java中基本输入输出流的解释
- java.toString() ,(String),String.valueOf的区别
- CF 118A string task
- Linux Mint下的Tomcat安装及配置
- 模态从第三个控制器返回到第一个控制器
- Leet Code OJ 202. Happy Number [Difficulty: Easy]
- 在VMWare安装Xinu