Submission #672404

#TimeUsernameProblemLanguageResultExecution timeMemory
672404horiseunZagrade (COI20_zagrade)C++11
0 / 100
1 ms208 KiB
#include <iostream> #include <vector> #include <stack> #include <cstring> #include <algorithm> using namespace std; int n, q, emp; stack<int> unpaired; int main() { ios_base::sync_with_stdio(false); cin.tie(0); cin >> n >> q; string ans(n + 1, ' '); unpaired.push(0); for (int i = 1; i < n; i++) { if (unpaired.empty()) { unpaired.push(i); continue; } cout << "? " << unpaired.top() << " " << i << "\n"; cout.flush(); int res; cin >> res; if (res) { ans[unpaired.top()] = '('; ans[i] = ')'; unpaired.pop(); } else { unpaired.push(i); } } for (int i = 0; i < n; i++) { if (!(ans[i] == '(' || ans[i] == ')')) emp++; } emp /= 2; for (int i = 0; i < n; i++) { if (ans[i] == '(' || ans[i] == ')') { } else { if (emp) { ans[i] = ')'; emp--; } else { ans[i] = '('; } } } cout << "! " << ans << "\n"; cout.flush(); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...