博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
括号配对问题
阅读量:4685 次
发布时间:2019-06-09

本文共 1074 字,大约阅读时间需要 3 分钟。

括号配对问题

时间限制:
3000 ms  |  内存限制:
65535 KB
难度:
3
描述
现在,有一行括号序列,请你检查这行括号是否配对。
输入
第一行输入一个数N(0<N<=100),表示有N组测试数据。后面的N行输入多组输入数据,每组输入数据都是一个字符串S(S的长度小于10000,且S不是空串),测试数据组数少于5组。数据保证S中只含有"[","]","(",")"四种字符
输出
每组输入数据的输出占一行,如果该字符串中所含的括号是配对的,则输出Yes,如果不配对则输出No
样例输入
3[(])(])([[]()])
样例输出
NoNoYes
 
#include 
#include
using namespace std;int main(){ int n,top,j; char str[10000],stack[5000]; cin>>n; while(n--) { scanf("%s",str); if(str[0]==')'||str[0]==']') stack[0]='1'; else { for(top=0,j=0;str[j]!='\0';j++) { if(str[j]=='('||str[j]=='[') { stack[top]=str[j]; top++; } else if(str[j]==']') { if(stack[top-1]!='[') { stack[0]='1'; break; } else { stack[top-1]='0'; top--;; } } else if(str[j]==')') { if(stack[top-1]!='(') { stack[0]='1'; break; } else { stack[top-1]='0'; top--; } } } } printf(stack[0]=='0'?"Yes\n":"No\n"); } return 0;}

转载于:https://www.cnblogs.com/cszlg/archive/2012/03/19/2910537.html

你可能感兴趣的文章
TextMate bundle 学习笔记之 创建模版
查看>>
什么是html,什么是php
查看>>
(并行编程)SpinLock
查看>>
浅谈 Java XML 底层解析方式
查看>>
ADO.NET介绍
查看>>
贪吃蛇easyx版本
查看>>
百度地图 JS API开发Demo01
查看>>
采用javascript实现WebGIS页面元素动态布局
查看>>
约瑟夫环问题
查看>>
Real-Time C++: Efficient Object-Oriented and Template Microcontroller Programming.pdf
查看>>
WPF 获取指定文件的Icon
查看>>
mysql实践(四)
查看>>
在linux服务器上配置anaconda和Tensorflow,并运行
查看>>
[POJ2823][洛谷P1886]滑动窗口 Sliding Window
查看>>
Flex 4.x 下载进度不出现问题解决办法
查看>>
Vue之自定义组件的v-model
查看>>
Vue项目碰到"‘webpack-dev-server’不是内部或外部命令,也不是可运行的程序或批处理文件"报错...
查看>>
解决Xcode在ipad/iphone 9.2 系统真机测试时出现could not find developer disk image问题
查看>>
基于asp.net的ajax分页
查看>>
分布式事务,两阶段提交协议,三阶段提交协议
查看>>