zoukankan      html  css  js  c++  java
  • Uva-673 Parentheses Balance

     1 #include <bits/stdc++.h>
     2 using namespace std;
     3 
     4 int main()
     5 {
     6     int T;
     7     cin >> T;
     8     getchar();
     9     while(T --)
    10     {
    11         string input;
    12         getline(cin,input);
    13         stack<char> s;
    14         while(!s.empty()) s.pop();
    15         int flag = 0;
    16         for(auto c:input)
    17         {
    18             if(c=='('||c=='[')
    19                 s.push(c);
    20             else if(c==')')
    21             {
    22                 if(!s.empty()&&s.top()=='(')
    23                     s.pop();
    24                 else
    25                 {
    26                     flag = 1;
    27                     break;
    28                 }
    29             }
    30             else if(c==']')
    31             {
    32                 if(!s.empty()&&s.top()=='[')
    33                     s.pop();
    34                 else
    35                 {
    36                     flag = 1;
    37                     break;
    38                 }
    39             }
    40         }
    41         if(!flag&&s.empty())
    42             cout << "Yes" << endl;
    43         else
    44             cout << "No" << endl;
    45     } 
    46     return 0;
    47 }

    注意第一个条件,空串也是Yes

  • 相关阅读:
    fort循环
    while
    函数和数组
    case
    init进程
    权限安全:堡垒机部署实践
    tcp首部当中seq和ack的增长规律
    VRRP
    MSTP
    字符集专题
  • 原文地址:https://www.cnblogs.com/Asurudo/p/10018474.html
Copyright © 2011-2022 走看看