括号配对问题

时间限制:3000 ms  |  内存限制:65535 KB
难度:3

描述
现在,有一行括号序列,请你检查这行括号是否配对。
输入
第一行输入一个数N(0<N<=100),表示有N组测试数据。后面的N行输入多组输入数据,每组输入数据都是一个字符串S(S的长度小于10000,且S不是空串),测试数据组数少于5组。数据保证S中只含有"[", "]", "(", ")" 四种字符
输出
每组输入数据的输出占一行,如果该字符串中所含的括号是配对的,则输出Yes,如果不配对则输出No
样例输入
3
[(])
(])
([[]()])
样例输出
No
No
Yes
思路:括号匹配问题,读取到左边的括号,入栈,读取到右边的从栈顶拿出进行匹配,失败即为不匹配的串,否则继续处理
#include <iostream>
#include <string>
using namespace std;struct stack{int num;string str;
};int main(){int n;cin>>n;string ss;stack a;int i;while(n--){cin>>ss;a.num = 0;a.str = "";if (ss.length()%2!=0){cout<<"No"<<endl;}else{if (ss[0]!='[' && ss[0]!='('){cout<<"No"<<endl;}else{for (i = 0 ; i < ss.length(); i++){if (ss[i]=='('||ss[i]=='['){a.str = a.str + ss[i];a.num++;}else if (ss[i]==')'){if (a.str[a.num-1]=='('){a.num--;string temp = "";for (int j = 0 ; j < a.num ; j++){temp += a.str[j];}a.str = temp;}}else if (ss[i]==']'){if (a.str[a.num-1]=='['){a.num--;string temp = "";for (int j = 0 ; j < a.num ; j++){temp += a.str[j];}a.str = temp;}}}if (i==ss.length() && a.num==0){cout<<"Yes"<<endl;}else{cout<<"No"<<endl;}}}}return 0;
}        

转载于:https://www.cnblogs.com/lyc94620/p/9289138.html

【ACM】括号配对问题 - 栈相关推荐

  1. acm括号配对问题c语言,ACM:UESTC - 649 括号配对问题 - stack

    /*/ 简单的括号配对问题 先把给出的数字串全部变成括号串,在用栈去压入括号,每次保存栈顶括号,如果栈顶括号能和下一个括号配对,就把栈顶弹出,指括号的指针后移. 最后判断栈内是否还有元素,如果有,就说 ...

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

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

  3. ACM试题 - 括号配对问题 - Java中字符串截取和定位问题

    ACM试题题源(括号配对问题):http://acm.nyist.net/JudgeOnline/problem.php?pid=2 提交代码: import java.util.Scanner;pu ...

  4. 括号配对问题_栈stack

    问题 A: 括号配对问题 时间限制: 3 Sec  内存限制: 128 MB 提交: 3  解决: 2 [提交][状态][讨论版] 题目描述 现在,有一行括号序列,请你检查这行括号是否配对. 输入 第 ...

  5. 括号配对问题 -- ACM解决方法

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

  6. 括号配对问题http://acm.nyist.net/JudgeOnline/problem.php?pid=2

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

  7. 【ACM】nyoj_2_括号配对问题_201308091548

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

  8. NYOJ 括号配对问题

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

  9. NYOJ2—括号配对问题

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

最新文章

  1. SAP MCH1表和MCHA表更新逻辑
  2. django 连接mysql 数据库
  3. U盘启动盘制作方法 2种绝招轻松搞定
  4. leetcode-生成括号(回溯算法)
  5. win10主题更换_还不升级? win10精简版不到10G,运行比win7还快,旧电脑的福音
  6. java工厂模式学习
  7. 顶级MySQL主从复制企业应用
  8. Javassist进行方法插桩
  9. Egret入门学习日记 --- 问题汇总
  10. centos6.5 mysql配置整理
  11. 5G终端天线设计,到底有多难?
  12. mysql带入参的存储过程_MySql带参数存储过程()
  13. 防止被偷窥和修改 Office文档保护秘笈
  14. Adminlte数据分页设置
  15. 功能测试用例设计方法,一文带你了解用例设计,再也不担心用例了
  16. oracle的number类型
  17. 优质供应商选择标准_优秀供应商评选标准
  18. SAP中通过格式调整解决导出EXCEL表字段显示不全问题
  19. 计算机怎么升级64位操作系统,32位系统怎么升级64位系统
  20. Protocol “https“ not supported or disabled in libcurl

热门文章

  1. 一年收入多少才能支撑自驾环游中国?
  2. 楼对面的男士夏天就光膀子,请问大家,男士真的都爱光膀子吗?
  3. 大到创业,小到做一份副业
  4. 学校如何把表格里的成绩,让学生以二维码的方式去扫描查询呢?
  5. Facts have proved that this is more popular than his article
  6. Python学习笔记(尚硅谷)——变量
  7. Mybatis注解配置与xml配置不能同时使用
  8. sql server 关联_SQL Server中的关联规则挖掘
  9. 了解SQL Server数据管理生命周期
  10. 201671010439-词频统计软件项目报告