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[提交][状态][讨论版] 题目描述 现在,有一行括号序列,请你检查这行括号是否配对. 输入 第一行 ...
随机推荐
- MySQL 内存监控
上一篇blog介绍了因为sql查询information_schema表而导致内存暴涨的case. 今天顺便做了一个thd内存的监控: 先来介绍下MySQL的内存: 1. 线程内内存:thd-> ...
- bzoj2661
不难想到,先枚举建图然后跑最大费用最大流 也不难想到一种将每个数拆成两个点i1,i2,所有满足条件的数之间 把所有满足条件之间的数x,y连边x1--->y2,y1--->x2,流量为1,费 ...
- js中test,exec和match方法
test test 返回 Boolean,查找对应的字符串中是否存在模式. var str = "1a1b1c";var reg = new RegExp("1.&quo ...
- 客户端验证的极品--jQuery.validator
最近在做一个用户注册登录的页面,资料查寻过程中发现了一个非常不错的客户端验证的极品-jQuery.validate.它是著名的JavaScript包jQuery的一个插件,其实它还有其它的一些插件应该 ...
- Linux中的syslog 入门学习教程
syslog是linux系统中默认的日志守护进程,默认的syslog配置文件是/etc/syslog.conf文件.程序.守护进程和内核提供了访问系统的日志信息.任何希望生成日志信息的程序都可以向sy ...
- hunnu Sum of f(x)
http://acm.hunnu.edu.cn/online/?action=problem&type=show&id=11546&courseid=0 Sum of f(x) ...
- js图片实现延迟加载
<script type="text/javascript"> function delayload(option){ //读取参数 //图片未加载时显示的图片 var ...
- [codevs3296]有序数组合并
题目描述 Description 合并两个有序数组A和B,使得结果依然有序. 进阶:合并两个有序数组A和B,假设A有n个数,B有m个数,A数组后面还有m个空余空间,需要将结果保存在A中. 请使用O(n ...
- Storm系列(二十)分区事务PartitionTransaction及示例
在Storm中分区事务的处理,Spout端需要实现IPartitionedTransactionalSpout接口,用于对批次及偏移量的控制,而Bolt都必须实现IBatchBolt接口,通常继承至B ...
- POJ2407–Relatives(欧拉函数)
题目大意 给定一个正整数n,要求你求出所有小于n的正整数当中与n互质的数的个数 题解 欧拉函数模板题~~~因为n过大~~~所以直接用公式求 代码: #include<iostream> # ...