括号配对问题

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

输入
第一行输入一个数N(0<N<=100),表示有N组测试数据。后面的N行输入多组输入数据,每组输入数据都是一个字符串S(S的长度小于10000,且S不是空串),测试数据组数少于5组。数据保证S中只含有"[","]","(",")"四种字符
输出
每组输入数据的输出占一行,如果该字符串中所含的括号是配对的,则输出Yes,如果不配对则输出No
样例输入
3
[(])
(])
([[]()])
样例输出
No
No
Yes
题目不解释了,因为这道题并不难,今天我只是用容器的方法求解
#include<vector>//要使用vector容器必须在头文件中声明
#include<iostream>
#include<string>
using namespace std;
int main()
{
    int n;
    cin>>n;
    while(n--)
    {
        vector<char> vec;//创建一个对象
        string ch;
        vec.push_back(' ');//这句话可有可无,但是如果没有这句话在最后的时候应该把1改成0
        cin>>ch;
        for(int i = 0;i<ch.length();i++)
        {
            vec.push_back(ch[i]);
            if(vec.back()-1==*(vec.end()-2)||vec.back()-2==*(vec.end()-2))
                        //核心语句,对照ASCII码表会发现(与)的ASCII码相差为1,意思就是把最后一个
           //输入的字符的ASCII码减1与倒数第二个相比较看是否相等
            {
                vec.pop_back();//跳出语句,跳出最后一个输入的字符
                vec.pop_back();//连续使用两个跳出语句,跳出最后一位和倒数第二位
            }
        }
        if(vec.size()==1)//判断最后vector中还有几个字符,这里为1因为最开始输入了一个空格
            cout<<"Yes"<<endl;
        else
            cout<<"No"<<endl;
    }
    return 0;
}
代码解释完了,这道题也就结束了,还是老样子,不懂的留言私信都可以

NYOJ 括号配对问题用容器来解决 酒馆浪人的博客相关推荐

  1. NYOJ Binary String Matching的stl解法 酒馆浪人的博客

    Binary String Matching 时间限制: 3000 ms  |  内存限制: 65535 KB 难度: 3 描述 Given two strings A and B, whose al ...

  2. vector的日常笔记 酒馆浪人的博客

    1.vector是一种简单向量容器,不仅能像数组一样对元素随机访问,还可以在尾部插入元素,是一种简单高效的容器,完全可以代替数组. 2.创建对象(常用的有三种形式) 1>不指定容器个数,如定义一 ...

  3. NYOJ 擅长排列的小明 酒馆浪人的博客

    这道题依旧是全排列只不过根D的小L略有不同 擅长排列的小明 时间限制: 1000 ms  |  内存限制: 65535 KB 难度: 4 描述 小明十分聪明,而且十分擅长排列计算.比如给小明一个数字5 ...

  4. nyoj 找点 酒馆浪人的博客

    找点 时间限制: 2000 ms  |  内存限制: 65535 KB 难度: 2 描述 上数学课时,老师给了LYH一些闭区间,让他取尽量少的点,使得每个闭区间内至少有一个点.但是这几天LYH太忙了, ...

  5. NYOJ D的小L 酒馆浪人的博客

    D的小L 时间限制: 4000 ms  |  内存限制: 65535 KB 难度: 2 描述 一天TC的匡匡找ACM的小L玩三国杀,但是这会小L忙着哩,不想和匡匡玩但又怕匡匡生气,这时小L给匡匡出了个 ...

  6. 找零钱 xynuoj 酒馆浪人的博客

    1259: 找零钱 时间限制: 1 Sec   内存限制: 128 MB 提交: 10   解决: 10 [ 提交][ 状态][ 讨论版] 题目描述 小智去超市买东西,买了不超过一百块的东西.收银员想 ...

  7. xynuoj 灯光问题 酒馆浪人的博客

    问题 A: 灯光控制 时间限制: 1 Sec  内存限制: 128 MB 提交: 52  解决: 39 [ 提交][ 状态][ 讨论版] 题目描述 灯光师小明控制着各种晚会的各种大小灯,每次晚会小明都 ...

  8. 美元汇率问题 酒馆浪人的博客

    1251: 美元汇率(dollars) 时间限制: 1 Sec   内存限制: 128 MB 提交: 16   解决: 7 [ 提交][ 状态][ 讨论版] 题目描述 在以后的若干天里戴维将学习美元与 ...

  9. xynuoj 零用钱 酒馆浪人的博客

    1263: 零用钱 时间限制: 1 Sec   内存限制: 128 MB 提交: 2   解决: 2 [ 提交][ 状态][ 讨论版] 题目描述 作為创造產奶纪录的回报,Farmer  John决定开 ...

最新文章

  1. [置顶]       jQuery乱谈(六)
  2. c++中boost协程5种使用实例
  3. 字符串整体赋值和比较问题
  4. Java后端带参跨域访问_java后端解决请求跨域
  5. Linux多线程开发-线程同步-互斥锁pthread_mutex_t
  6. nginx-正则表达式-重定向
  7. 自动完成代码,提高工作效率
  8. 事件处理介绍(简要学习笔记十七)
  9. 在C#中使用自定义消息
  10. fork()和多线程
  11. C语言中结构体赋值问题的讨论
  12. 乐高叉车wedo教案_乐高wedo20课程教案
  13. 高校学子如何免费上网?
  14. 【jQuery】jQuery本地时间与世界时间时差转换
  15. 商业智能BI推动制造业智能化转型
  16. Ubuntu下使用FreeRadius实现Wifi认证
  17. 你还记得当年上课天天玩 JAVA游戏吗
  18. ASP.Net邮件模板编辑与发送邮件的完美实现
  19. 【面试大全-MQ】-消息队列
  20. 【C#】简繁体转换类

热门文章

  1. 2938. ZZZ vs MJQ 2
  2. 雷文-武汉科技大学-软件工程-本科-20111020(2011年校园招聘找工作时的简历)
  3. 输入一个百分制成绩,输出成绩等级
  4. 2023 QQ微信防红浏览器跳转源码
  5. 基于 Dotnetty 的 Mqtt Client
  6. 乞讨行业也需要做策划!真是太牛了!
  7. 网易下沙校区笔试经验
  8. Problem D. S05-04 银行存钱的本金和利息计算(非复利)
  9. Chrome Devtool 使用指南
  10. idea如何全局搜索关键字_IntelliJ IDEA全局内容搜索和替换教程图解