# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
98563 | 2019-02-24T10:44:06 Z | tdwn | parentrises (BOI18_parentrises) | C++17 | 2 ms | 384 KB |
#include <bits/stdc++.h> #define ll long long using namespace std; string code; string answ; void solvea() { cin>>code; answ = code; stack<int>p1, p2; for(int i=0;i<code.length();i++) { if(code[i] == '(') { p1.push(i); } else { if(p1.size() != 0) { answ[i] = 'B'; p2.push(p1.top()); answ[p1.top()] = 'B'; p1.pop(); } else if(p2.size() != 0) { answ[p2.top()] = 'G'; answ[i] = 'R'; p2.pop(); } else { cout<<"Impossible\n"; return; } } } while(p1.size() > 0) p1.pop(); while(p2.size() > 0) p2.pop(); for(int i=code.length()-1;i>=0;i--) { if(code[i] == ')' && answ[i] == 'B') { p1.push(i); } else if(code[i] == '(' && answ[i] == '(') { if(p1.size() != 0) { answ[p1.top()] = 'G'; answ[i] = 'R'; p1.pop(); } else { cout<<"Impossible\n"; return; } } } int sb = 0, sr = 0; for(int i=0;i<code.length();i++) { if(answ[i] != 'G' && answ[i] != 'B' && answ[i] != 'R') { cout<<"Impossible\n"; return; } if(code[i] == '(') { if(answ[i] == 'B') sb++; else if(answ[i] == 'R') sr++; else { sb++; sr++; } } else { if(answ[i] == 'B') sb--; else if(answ[i] == 'R') sr--; else { sb--; sr--; } } if(sb < 0 || sr < 0) { cout<<"Impossible\n"; return; } } if(sb != 0 || sr != 0) { cout<<"Impossible\n"; return; } cout<<answ<<"\n"; return; } void solveb() { cout<<"0\n"; } int main() { int P, T; cin>>P; cin>>T; while(T--) { if(P == 1) solvea(); else solveb(); } return 0; }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 256 KB | Output is correct |
2 | Correct | 2 ms | 256 KB | Output is correct |
3 | Incorrect | 2 ms | 256 KB | Output isn't correct |
4 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 2 ms | 384 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 2 ms | 384 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 2 ms | 384 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 2 ms | 384 KB | Output isn't correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 2 ms | 384 KB | Output isn't correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 2 ms | 384 KB | Output isn't correct |