Submission #1152617

#TimeUsernameProblemLanguageResultExecution timeMemory
1152617hmm789Zagrade (COI20_zagrade)C++20
100 / 100
262 ms5888 KiB
#include "bits/stdc++.h" using namespace std; #define int long long #define double long double #define INF 1000000000000000000 #define MOD 1000000007 int32_t main() { // ios_base::sync_with_stdio(0); // cin.tie(0); cout.tie(0); int n, q, x; cin >> n >> q; int a[n]; memset(a, 0, sizeof(a)); int s = 0, cnt = n/2; set<int> st; for(int i = 0; i < n; i++) st.insert(i); for(int e = 1; e < n; e++) { if(s == -1 || a[s]) { s = e; continue; } cout << "? " << s+1 << " " << e+1 << endl; cin >> x; if(x == 1) { a[s] = 1; a[e] = -1; st.erase(s); st.erase(e); cnt--; auto it = st.upper_bound(s); if(it == st.begin()) s = -1; else s = *prev(it); } else { s = e; } } cout << "! "; for(int i = 0; i < n; i++) { if(!a[i]) { if(cnt > 0) a[i] = -1; else a[i] = 1; cnt--; } if(a[i] == 1) cout << '('; else cout << ')'; } cout << endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...