括号配对问题

时间限制:3000 ms  |  内存限制:65535 KB
难度:3
描述
现在,有一行括号序列,请你检查这行括号是否配对。

输入
第一行输入一个数N(0<N<=100),表示有N组测试数据。后面的N行输入多组输入数据,每组输入数据都是一个字符串S(S的长度小于10000,且S不是空串),测试数据组数少于5组。数据保证S中只含有"[","]","(",")"四种字符
输出
每组输入数据的输出占一行,如果该字符串中所含的括号是配对的,则输出Yes,如果不配对则输出No
样例输入
3
[(])
(])
([[]()])
样例输出
No
No
Yes
来源
网络
上传者
naonao

#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <stack>
using namespace std ;
char s[10005] ;
bool flag ;
void judge ()
{int i ;int len ;char ch ;stack <char> Q ;len = strlen (s) ;for (int i = 0; i < len; i ++){if (Q.empty()){Q.push (s[i]) ;continue ;}if (s[i] == '[' || s[i] == '(')Q.push (s[i]) ;else{if (s[i] == ']'){ch = Q.top () ;Q.pop () ;if (ch != '['){flag = false ;break;}}else{ch = Q.top () ;Q.pop () ;if (ch != '('){flag = false ;break ;}}}}if (!Q.empty ())  // 如果此时栈中还有元素,肯定不匹配{flag = false ;Q.pop () ;}return ;
}
int main()
{int t ;scanf ("%d", &t) ;while (t--){scanf ("%s", s) ;flag = true ;judge ();if (flag)printf ("Yes\n");elseprintf ("No\n");memset (s, '\0', sizeof(s)) ;}return 0 ;
}

NYOJ 2括号配对 栈的运用相关推荐

  1. python小括号报错_Python学习记录:括号配对检测问题

    Python学习记录:括号配对检测问题 一.问题描述 在练习Python程序题的时候,我遇到了括号配对检测问题. 问题描述:提示用户输入一行字符串,其中可能包括小括号 (),请检查小括号是否配对正确, ...

  2. LeetCode--32. 最长有效括号(栈)

    最长有效括号(栈) 1. 题目描述 2. 题目分析 3. C语言实现 1. 题目描述 难度:困难 2. 题目分析 这道题与LeetCode–20. 有效的括号类似,LeetCode20要求的是找出字符 ...

  3. [NYOJ 15] 括号匹配(二)

    括号匹配(二) 时间限制:1000 ms  |  内存限制:65535 KB 难度:6 描述给你一个字符串,里面只包含"(",")","[" ...

  4. python123 括号配对检测

    python123 括号配对检测 题目要求: 用户输入一行字符串,其中可能包括小括号 (),请检查小括号是否配对正确,配对成功与否分别输出:‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬ ...

  5. 代码随想录算法训练Day11 LeetCode232. 用栈实现队列(模拟);225.用队列实现栈(模拟);20. 有效的括号(栈应用);1047. 删除字符串中的所有相邻重复项(栈应用)

    代码随想录算法训练Day11 | LeetCode232. 用栈实现队列(模拟):225.用队列实现栈(模拟):20. 有效的括号(栈应用):1047. 删除字符串中的所有相邻重复项(栈应用) 关于栈 ...

  6. NYOJ符号配对(栈的思想)

    题目描述: 现在,有一行括号序列,请你检查这行括号是否配对 输入描述: 第一行输入一个数N(0<N<=100),表示有N组测试数据.后面的N行输入多组输入数据,每组输入数据都是一个字符串S ...

  7. java中统计括号配对_括号配对问题(C语言或JAVA语言代码)

    描述 现在,有一行括号序列,请你检查这行括号是否配对. 输入 第一行输入一个数N(0 "]", "(", ")" 四种字符 输出 每组输入数 ...

  8. NYOJ 2 括号配对问题

    括号配对问题 时间限制:3000 ms  |           内存限制:65535 KB 难度:3 描述 现在,有一行括号序列,请你检查这行括号是否配对. 输入 第一行输入一个数N(0<N& ...

  9. c语言一串字符括号配对,C语言实现括号匹配的方法

    1 要求 编写程序检查该字符串的括号是否成对出现,而且不能交叉出现. 输入: 一个字符串,里边可能包含"()"."{}"."[]"三种括号, ...

  10. 括号配对问题----栈模拟

    括号配对问题 时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描述 现在,有一行括号序列,请你检查这行括号是否配对. 输入 第一行输入一个数N(0<N<=100), ...

最新文章

  1. NRPE实现对其它(远端)设备的监控
  2. .NET Core开发实战(定义API的最佳实践)Source Generators版
  3. 通过WordPress内置函数批量添加文章
  4. 如何使用「番茄法」高效的写算法题?
  5. AI 人工智能与半导体论坛:
  6. Redis数据结构之集合
  7. python从入门到精通需要多久-python学习从入门到精通要多久
  8. Java三大器之过滤器(Filter)的工作原理和代码演示
  9. 2.企业安全建设入门(基于开源软件打造企业网络安全) --- 业务网纵深防御体系建设
  10. Windows XP SP3安装后瘦身法
  11. Stemming and lemmatization
  12. SMTP 发送邮件错误码和解决方法
  13. linux shell 脚本手动执行没问题,但在任务计划中执行有问题
  14. DRV_03_编写最简单的触摸屏驱动程序_基于QEMU
  15. win8计算机管理员权限删除文件,如何解决 win8系统管理员权限删除文件夹访问被拒绝(3页)-原创力文档...
  16. 竞赛题-6283. 正整数和负整数的最大计数
  17. 传递函数化为状态空间表达式
  18. 【Codeforces】【161Div2】
  19. html5支付成功页面,订单完成页面视图《 微信支付:H5 移动端支付 》
  20. python 线性回归函数_8种用Python实现线性回归的方法,究竟哪个方法最高效?

热门文章

  1. iOS设备是否越狱的判断代码
  2. 跨部门的bug的沟通
  3. Android中的Menu(菜单)的三种类型菜单的学习
  4. ble连接过程建立_BLE蓝牙协议 — BLE连接建立过程梳理
  5. 520超浪漫文艺表白,追求女神必备!!动态Html网页,无编程基础也可娱乐
  6. python用pyecharts画柱状图_小白学Python(13)——pyecharts 绘制 柱状图/条形图 Bar
  7. vb6 怎么把一个数组的 0 值 去掉_解决逆向查找问题?VLOOKUP、CHOOSE、IF,索引数组,轻松解决...
  8. vue-router个人总结
  9. mongodb driver c#语法
  10. WPF Bitmap转成Imagesource的性能优化