Time Limit: 1000MS   Memory Limit: 65535KB   64bit IO Format: %lld & %llu

Description

大家都知道算术表达式中,括号必须配对,现在任意给出一个算术表达式,判断其括号是否配对。如果配对,输出Yes,否则输出No

Input

含多组测试数据,输入首先是一个整数T表示测试数据组数(0<T≤300)。随后有T行测试数据,长度不超过1000个字符,字符串间不含空格。

Output

对应每组测试数据,输出一行结果。

Sample Input


32(78-23)+78 
32
78)-(23+78)

Sample Output

Yes 
No

Hint

 

Source

wxiaoping - 2012
 
 
  1. /*/
  2. 简单的括号配对问题
  3.  
  4. 先把给出的数字串全部变成括号串,在用栈去压入括号,每次保存栈顶括号,如果栈顶括号能和下一个括号配对,就把栈顶弹出,指括号的指针后移。
  5.  
  6. 最后判断栈内是否还有元素,如果有,就说明配对不成功。
  7.  
  8. AC代码:
  9. /*/
  1. #include"algorithm"
  2. #include"iostream"
  3. #include"cstring"
  4. #include"cstdlib"
  5. #include"cstdio"
  6. #include"string"
  7. #include"vector"
  8. #include"stack"
  9. #include"queue"
  10. #include"cmath"
  11. #include"map"
  12. using namespace std;
  13. typedef long long LL ;
  14. #define lson l,m,rt<<1
  15. #define rson m+1,r,rt<<1|1
  16. #define FK(x) cout<<"["<<x<<"]\n"
  17. #define memset(x,y) memset(x,y,sizeof(x))
  18. #define memcpy(x,y) memcpy(x,y,sizeof(x))
  19. #define bigfor(T) for(int qq=1;qq<= T ;qq++)
  20.  
  21. const int MX=1e5+1e3;
  22.  
  23. char s[MX],cc[MX],t[MX];
  24.  
  25. stack<char> st;
  26.  
  27. bool check() {
  28. int len = strlen(cc);
  29. while(!st.empty())st.pop();
  30. int i=0;
  31. char stc;
  32. while(i<len) {
  33. st.push(cc[i++]);
  34. stc=st.top();
  35. while(stc=='('&&cc[i]==')'){
  36. st.pop();
  37. i++;
  38. if(st.empty())break;
  39. stc=st.top();
  40. }
  41. }
  42. if(st.empty())return 0;
  43. return 1;
  44. }
  45.  
  46. int main() {
  47. int T;
  48. t[0]='(',t[1]=')',t[2]='\0';
  49. scanf("%d",&T);
  50. bigfor(T) {
  51. scanf("%s",s);
  52. int len=strlen(s);
  53. int erear=0;
  54. for(int i=0; i<len; i++) {
  55. if(s[i]=='('||s[i]==')') {
  56. cc[erear++]=s[i];
  57. }
  58. }
  59. cc[erear]='\0';
  60. if(check()) {
  61. puts("No");
  62. } else puts("Yes");
  63. }
  64. return 0;
  65. }
  1.  

  

  1.  

ACM:UESTC - 649 括号配对问题 - stack的更多相关文章

  1. nyoj 2 括号配对问题(stack)

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

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

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

  3. 括号配对问题_栈<stack>

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

  4. ACM 括号配对问题

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

  5. 【ACM】括号配对问题 - 栈

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

  6. Num 15: NYOJ: 题目0002 : 括号配对问题 [ 栈(stack) ]

    原题连接      首先要了解有关栈的一些基本知识,即:      什么是栈,栈有什么作用:        1.什么是栈: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkb ...

  7. NYOJ之括号配对问题

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

  8. nyoj 2 括号配对问题 栈

    nyoj 2 括号配对问题 题目链接: http://acm.nyist.net/JudgeOnline/problem.php?pid=2 思路: 栈:'(' '['入栈,遇到 ']' ')'出栈 ...

  9. hdoj 2 括号配对问题【数组模拟实现+STL实现】

    栈遵循先进后出的原则 括号配对问题 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述 现在,有一行括号序列,请你检查这行括号是否配对.   输入 第一行输入一个数N(0 ...

随机推荐

  1. ImageView的常用属性

    ImageView的一些常用属性,并且这些属性都有与之对应的getter.setter方法: android:adjustViewBounds:设置ImageView是否调整自己的边界来保持所显示图片 ...

  2. Python之路【第十七篇】Django进阶篇

    规范 确立规范的好处: 代码可读性高 方便代码的定位极其查找 为以后代码扩容带来便利 场景: 在多个APP的场景下,单个app的URL函数功能较多的时候,我们可以通过以下方法来解决. 把Views写成 ...

  3. 数据存储_SQLite常用的函数

    一.简单说明 1.打开数据库 int sqlite3_open( const char *filename,   // 数据库的文件路径 sqlite3 **ppDb            // 数据 ...

  4. Linux命令--删除软连接

    1,建立软链接 ln -s 源文件 目标文件 例如:ln -s /usr/hb/ /home/hb_link 2,删除软链接 正确的是:rm -rf hb_link 错误的是:rm -rf hb_li ...

  5. [Machine Learning & Algorithm] 随机森林(Random Forest)

    1 什么是随机森林? 作为新兴起的.高度灵活的一种机器学习算法,随机森林(Random Forest,简称RF)拥有广泛的应用前景,从市场营销到医疗保健保险,既可以用来做市场营销模拟的建模,统计客户来 ...

  6. Linux启动新进程的几种方法汇总

    有时候,我们需要在自己的程序(进程)中启动另一个程序(进程)来帮助我们完成一些工作,那么我们需要怎么才能在自己的进程中启动其他的进程呢?在Linux中提供了不少的方法来实现这一点,下面就来介绍一个这些 ...

  7. IIS相关知识

    1.在web.config中,iis6使用<system.web>下配置项,iis7使用<system.webServer>下配置项 2.<httpHandlers> ...

  8. vim python配置 安装pep8自动检查插件,语法高亮

    pep8 http://www.vim.org/scripts/script.php?script_id=2914 语法高亮 http://www.vim.org/scripts/script.php ...

  9. Servlet 之 HttpServlet

    package cn.jiemoxiaodi.http; import java.io.IOException; import javax.servlet.GenericServlet; import ...

  10. connect 链接失败: 查找不到 signal

                提示错误是:   signal_index < 0 ;;     ----  故 connect返回false;              消除  connect  信号 ...