Advertisement
Korotkodul

21.07_div2_C

Jul 21st, 2022 (edited)
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.77 KB | None | 0 0
  1. #include <iostream>
  2. #include <cmath>
  3. #include <vector>
  4. #include <queue>
  5. #include <algorithm>
  6. #include <string>
  7. #include <stack>
  8. #include <set>
  9. #include <map>
  10. #define pii pair <int,int>
  11. #define vec vector
  12. using namespace std;
  13. using ll = long long;
  14. using ld = long double;
  15. using db = double;
  16. void cv(vector <int> &v){
  17.     for (auto x: v) cout<<x<<' ';
  18.     cout<<"\n";
  19. }
  20.  
  21. void cvl(vector <ll> &v){
  22.     for (auto x: v) cout<<x<<' ';
  23.     cout<<"\n";
  24. }
  25.  
  26.  
  27. void cvv(vector <vector <int> > &v){
  28.     for (auto x: v) cv(x);
  29.     cout<<"\n";
  30. }
  31.  
  32. void cvb(vector <bool> v){
  33.     for (bool x: v) cout<<x<<' ';
  34.     cout<<"\n";
  35. }
  36.  
  37. void cvs(vector <string>  v){
  38.     for (auto a: v){
  39.         cout<<a<<"\n";
  40.     }
  41. }
  42.  
  43. bool sh=0;
  44.  
  45. int main()
  46. {
  47.     ios::sync_with_stdio(0);
  48.     //cin.tie(0);
  49.     //cout.tie(0);
  50.     int t=1;
  51.     if (!sh) cin>>t;
  52.     for (int go=0;go<t;++go){
  53.         string s; cin>>s;
  54.         int bl=0, q=0;
  55.         for (char l: s){
  56.             if (l == '('){
  57.                 bl++;
  58.             }
  59.             else if (l == ')'){
  60.                      bl--;
  61.             }
  62.             else{
  63.                 q++;
  64.             }
  65.             if (bl == -1){
  66.                 bl = 0;
  67.                 q--;
  68.             }
  69.             else if (bl == 0 && l == '?' && q == 1){
  70.                 q--;
  71.                 bl = 1;
  72.             }
  73.  
  74.         }
  75.         if (sh){
  76.             cout<<"bl q = "<<bl<<' '<<q<<"\n";
  77.         }
  78.         bool ok;
  79.         if (bl == q){//(??) (()??()) ()??()  ()?? ()
  80.             ok=1;
  81.         }
  82.         else{
  83.             ok=0;
  84.         }
  85.         if (ok){
  86.             cout<<"YES\n";
  87.         }
  88.         else {
  89.             cout<<"NO\n";
  90.         }
  91.     }
  92. }/* (?? (??)  (??())
  93. wa:
  94. (?)?)?)?)?
  95.  
  96.  
  97. ТВОЙ отв: NO
  98. должно быть : YES
  99. */
  100.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement