Submission #1152475

#TimeUsernameProblemLanguageResultExecution timeMemory
1152475YSH2020Zagrade (COI20_zagrade)C++20
14 / 100
282 ms752 KiB
#include <bits/stdc++.h> using namespace std; int ans[100005]; void solve(int s, int e) { ans[s] = 0; ans[e] = 1; if (e-s < 3) return; int last = s; for (int i = s+1; i < e; i += 2) { cout << "? " << last+1 << ' ' << i+1 << '\n'; int x; cin >> x; if (x == 1) { if (last+1 == i) { ans[last] = 0; ans[i] = 1; last = i+1; } else { ans[last] = 0; ans[i] = 1; solve(last+1, i-1); last = i+1; } } } if (last+1 == e) { ans[last] = 0; ans[e] = 1; } else { ans[last] = 0; ans[e] = 1; solve(last+1, e-1); } } int main() { int n, q; cin >> n >> q; //suppose this is a valid bracket sequence. solve(0, n-1); cout << "! "; for (int i = 0; i < n; i++) { if (ans[i] == 0) cout << '('; else cout << ')'; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...