Advertisement
Guest User

Untitled

a guest
Nov 24th, 2017
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.12 KB | None | 0 0
  1. #include <iostream>
  2. #include<math.h>
  3. #include <algorithm>
  4. #include<climits>
  5. using namespace std;
  6.  
  7.  
  8. struct skob
  9. {
  10. char sk;
  11. skob *next;
  12. };
  13. class st
  14. {
  15. skob *pbeg, *pend;
  16. public:
  17. st() { pend = pbeg = NULL; }
  18. void push(char sko);
  19. char pop();
  20. };
  21. void st::push(char sko)
  22. {
  23. skob *ptr = new skob;
  24. ptr->sk = sko; ptr->next = pbeg;
  25. pbeg = ptr;
  26.  
  27. }
  28. char st::pop()
  29. {
  30. if (!pbeg) return -1;
  31. skob *ptr = pbeg;
  32. char sko = pbeg->sk;
  33. pbeg = pbeg->next;
  34. delete ptr;
  35. return sko;
  36. }
  37. int main()
  38. {
  39. freopen("input.txt", "r", stdin);
  40. freopen("output.txt", "w", stdout);
  41.  
  42. char q, t;
  43. st a, *pb;
  44. pb = new st;
  45. int i = 0, z = 0, counter = 0;
  46. skob close[1000];
  47. skob open[1000];
  48. while (cin >> q)
  49. {
  50. if ((q == 40) || (q == 91) || (q == 60) ||(q==123))
  51. {
  52. a.push(q);
  53. pb->push(q);
  54. z++;
  55. }
  56. else
  57. {
  58. t = pb->pop();
  59. if ((t == 40) && (q == 41))
  60. counter++;
  61. else if ((t == 91) && (q == 93))
  62. counter++;
  63. else if ((t == 60) && (q == 62))
  64. counter++;
  65. else if ((t == 123) && (q == 125))
  66. counter++;
  67. }
  68. }
  69. if (counter == z)
  70. cout << 1;
  71. else
  72. cout << 0;
  73. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement