Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <vector>
- #include <algorithm>
- using namespace std;
- int main()
- {
- string a;
- cin >> a;
- vector <char> open;
- open.clear();
- vector <char> close;
- close.clear();
- int circle = 0;
- int figure = 0;
- int square = 0;
- int triangle = 0;
- for (int i = 0 ; i < a.length(); i++)
- {
- switch (a[i]) {
- case '(': {
- circle++;
- open.push_back('(');
- break;
- }
- case ')': {
- circle--;
- close.push_back('(');
- break;
- }
- case '{': {
- figure++;
- open.push_back('{');
- break;
- }
- case '}': {
- figure--;
- close.push_back('{');
- break;
- }
- case '[': {
- square++;
- open.push_back('[');
- break;
- }
- case ']': {
- square--;
- close.push_back('[');
- break;
- }
- case '<': {
- triangle++;
- open.push_back('<');
- break;
- }
- case '>': {
- triangle--;
- close.push_back('<');
- break;
- }
- }
- if (circle < 0 || figure < 0 || square < 0 || triangle < 0)
- {
- cout << "NO";
- return 0;
- }
- }
- std:: reverse(close.begin(), close.end());
- if (open == close)
- cout << "yes";
- else
- cout << "no";
- }
Advertisement
Add Comment
Please, Sign In to add comment