Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<bits/stdc++.h>
- using namespace std;
- typedef long long ll;
- int INF=2147483647;
- int inf=-2147483648;
- int mod=1000000007;
- #define read(x) cin >> x;
- #define fo(i,n) for(i=0;i<n;i++)
- #define one(x) cout<<(x)<<endl;
- #define two(a,b) cout<<(a)<<" "<<(b)<<endl;
- #define three(a,b,c) cout<<(a)<<" "<<(b)<<" "<<(c)<<endl;
- #define four(a,b,c,d) cout<<(a)<<" "<<(b)<<" "<<(c)<<" "<<(d)<<endl;
- #define write(a,i) cout << a[i] << " ";
- int main()
- {
- stack<char> stack;
- int sym;
- int n,i;
- bool flag = true;
- scanf("%d\n", &n);
- for (i = 0; i < n; ++i) {
- sym = getc(stdin);
- if (sym == '{' || sym == '(' || sym == '[')
- stack.push(sym);
- if(flag)
- switch (sym)
- {
- case'}':
- if (stack.size() > 0 && stack.top() == '{')
- stack.pop();
- else {
- flag = false;
- }
- break;
- case']':
- if (stack.size() > 0 && stack.top() == '[')
- stack.pop();
- else {
- flag = false;
- }
- break;
- case')':
- if (stack.size() > 0 && stack.top() == '(')
- stack.pop();
- else {
- flag = false;
- }
- break;
- }
- }
- if ((stack.size() == 0) && (flag)) {
- cout << "Ja" << endl;
- }
- else {
- cout << "Nein" << endl;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement