mfgnik

Untitled

Jun 27th, 2020
1,673
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.77 KB | None | 0 0
  1. #include <iostream>
  2. #include <unordered_map>
  3. #include <vector>
  4.  
  5. bool CheckSequence(const std::string &brackets) {
  6.     std::vector<char> stack;
  7.     std::unordered_map<char, char> brackets_dict{{'}', '{'}, {']', '['}, {')', '('}};
  8.     for (auto bracket : brackets) {
  9.         if (brackets_dict.count(bracket) == 0) {
  10.             stack.push_back(bracket);
  11.         } else if (!stack.empty() && brackets_dict[bracket] == stack.back()) {
  12.             stack.pop_back();
  13.         } else {
  14.             return false;
  15.         }
  16.     }
  17.     return stack.empty();
  18. }
  19.  
  20.  
  21. int main() {
  22.     std::vector<char> stack;
  23.     std::string brackets;
  24.     std::cin >> brackets;
  25.     if (CheckSequence(brackets)) {
  26.         std::cout << "yes";
  27.     } else {
  28.         std::cout << "no";
  29.     }
  30. }
Advertisement
Add Comment
Please, Sign In to add comment