nyoj 2 括号配对问题
括号配对问题
- 描述
- 现在,有一行括号序列,请你检查这行括号是否配对。
- 输入
- 第一行输入一个数N(0<N<=100),表示有N组测试数据。后面的N行输入多组输入数据,每组输入数据都是一个字符串S(S的长度小于10000,且S不是空串),测试数据组数少于5组。数据保证S中只含有"[","]","(",")"四种字符
- 输出
- 每组输入数据的输出占一行,如果该字符串中所含的括号是配对的,则输出Yes,如果不配对则输出No
- 样例输入
-
3
[(])
(])
([[]()]) - 样例输出
-
No
No
Yes#include <iostream>
#include <stack>
#include <cstdio>
#include <algorithm>
#include <cstring>
using namespace std; int main(){
int n;
char c;
//stack<char> s;//ÔÚÕâÀﶨÒåÕ»£¬ÔòÔÚÏÂÃæÃ¿´Î½øÐÐÒ»´Î×Ö·û´®Æ¥Å䣬¶¼ÐèÒªÇå¿ÕÕ»
cin >> n;
getchar();
while(n--){
stack<char> s;//ÔÚÕâÀﶨÒåÕ»Ï൱ÓÚÇå¿ÕÉÏÒ»¸ö×Ö·û´®Óõ½µÄÕ»
while(scanf("%c", &c) && (c != '\n')){
if(s.empty()){
s.push(c);
}else{
if((s.top() == '[' && c == ']') || (s.top() == '(' && c == ')'))//'['ºÍ']','('ºÍ')'acsiiÂë Ïà²î1
s.pop();
else
s.push(c);
} }
if(s.empty())
cout << "Yes" << endl;
else
cout << "No" << endl;
//while(!s.empty()){
// s.pop();
//}
} return ;
}
nyoj 2 括号配对问题的更多相关文章
- nyoj 2 括号配对问题 栈
nyoj 2 括号配对问题 题目链接: http://acm.nyist.net/JudgeOnline/problem.php?pid=2 思路: 栈:'(' '['入栈,遇到 ']' ')'出栈 ...
- NYOJ之括号配对问题
括号配对问题 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 现在,有一行括号序列,请你检查这行括号是否配对. 输入 第一行输入一个数N(0<N&l ...
- nyoj 2 括号配对问题(stack)
括号配对问题 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 现在,有一行括号序列,请你检查这行括号是否配对. 输入 第一行输入一个数N(0& ...
- NYOJ 2 括号配对问题 (模拟)
题目链接 描述 现在,有一行括号序列,请你检查这行括号是否配对. 输入 第一行输入一个数N(0<N<=100),表示有N组测试数据.后面的N行输入多组输入数据,每组输入数据都是一个字符串S ...
- nyoj 2 括号配对问题水
#include<stdio.h> #include<stack> #include<string.h> #define N 11000 using namesp ...
- nyoj 题目2 括号配对问题
描述 今天发现了nyoj,如获至宝.准备开刷. 括号配对问题 现在,有一行括号序列,请你检查这行括号是否配对. 输入 第一行输入一个数N(0<N<=100),表示有N组测试数据.后面的 ...
- Num 15: NYOJ: 题目0002 : 括号配对问题 [ 栈(stack) ]
原题连接 首先要了解有关栈的一些基本知识,即: 什么是栈,栈有什么作用: 1.什么是栈: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkb ...
- ACM:UESTC - 649 括号配对问题 - stack
UESTC - 649 括号配对问题 Time Limit: 1000MS Memory Limit: 65535KB 64bit IO Format: %lld & %llu ...
- 括号配对问题_栈<stack>
问题 A: 括号配对问题 时间限制: 3 Sec 内存限制: 128 MB提交: 3 解决: 2[提交][状态][讨论版] 题目描述 现在,有一行括号序列,请你检查这行括号是否配对. 输入 第一行 ...
随机推荐
- EF多数据库预热
使用EF第一次加载程序会很慢,因为EF第一次会生成实体类和数据库的对应关系并做缓存,怎么解决这个问题呢?站在巨人的肩膀上将会省力很多,博客园的dudu已经给出了个解决方案(EF版本6.0以上) htt ...
- Oracle Java SE远程安全漏洞(CVE-2013-5878)
漏洞版本: Oracle Java SE 7u45 Oracle Java SE 6u65 漏洞描述: BUGTRAQ ID: 64927 CVE(CAN) ID: CVE-2013-5878 Jav ...
- BZOJ2741: 【FOTILE模拟赛】L
2741: [FOTILE模拟赛]L Time Limit: 15 Sec Memory Limit: 162 MBSubmit: 1170 Solved: 303[Submit][Status] ...
- 6个可以隐藏运行bat,浏览器等程序的方法
在电脑启动时或者设置时间时运行指定的程序很容易实现.但是有时候还需要运行时不显示主界面,隐藏到后台运行.比如:开机时一段Bat批处理执行删除默认共享; 开机自动运行浏览器隐藏到后代打开指定网页等,希望 ...
- wildfly9 配置SSL单向认证/https
D:\>keytool -genkey -keystore cdi-init.keystore -alias cdi-init -keyalg RSA -keysize 2048 -validi ...
- 如果在Xcode6中创建空工程, 删除冗余信息
http://stackoverflow.com/questions/25783282/how-to-create-an-empty-application-in-xcode-6-without-st ...
- 【转】Android 源码编译make的错误处理--不错
原文网址:http://blog.csdn.net/ithomer/article/details/6977386 Android源码下载:官方下载 或参考android源码下载方式 Android编 ...
- 从零开始学习jQuery (九) jQuery工具函数
一.摘要 本系列文章将带您进入jQuery的精彩世界, 其中有很多作者具体的使用经验和解决方案, 即使你会使用jQuery也能在阅读中发现些许秘籍. 我们经常要使用脚本处理各种业务逻辑, 最常见的就 ...
- POJ 2449
#include<queue> #include<cstdio> #include<string> #include<cstring> #include ...
- IE9以下版本浏览器对HTML5新增标签不识别,导致CSS不起作用的问题
使用Javascript来使不支持HTML5的浏览器支持HTML标签.目前大多网站采用的这种方式(Bootcss官方例子也是如此). 在<head></head>标签内添加 2 ...