Submission #1114541

#TimeUsernameProblemLanguageResultExecution timeMemory
1114541NotLinuxMađioničar (COI22_madionicar)C++17
13 / 100
3694 ms448 KiB
// Author : FatihCihan #include <bits/stdc++.h> using namespace std; #define all(v) v.begin() , v.end() #define sz(a) (int)a.size() int n; int ask(int l , int r){ if(l < 1 or r > n)return 0; cout << "? " << l << " " << r << endl; int x; cin >> x; return x; } void answer(int x){ cout << "! " << x << endl; exit(0); } void solve(){ cin >> n; int r = 1 , ans = 1; for(int i = 1;i<=n;i++){ r = max(r , i); while((r+1) <= n and (i-(r-i)-1) >= 1 and ask(i-(r-i)-1 , r+1)){ r++; } ans = max(ans , 2 * (r - i) + 1); } r = 1; for(int i = 1;i<n;i++){ r = max(r , i); while((r+1) <= n and (i-(r-i)) >= 1 and ask(i-(r-i) , r+1)){ r++; } if(r > i){ ans = max(ans , 2 * (r - i)); } } answer(ans); } signed main(){ ios_base::sync_with_stdio(0);cin.tie(0); int testcase = 1;//cin >> testcase; while(testcase--)solve(); cerr << 1000.0 * clock() / CLOCKS_PER_SEC << " ms" << 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...