Submission #593702

#TimeUsernameProblemLanguageResultExecution timeMemory
593702AlesL0Worm Worries (BOI18_worm)C++17
0 / 100
3 ms4176 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; mt19937 rng(time(nullptr)); int ask(int i){ cout << "? " << i << " " << 1 << " " << 1 << endl; int x; cin >> x; return x; } int main(){ int N, M, K, Q; cin >> N >> M >> K >> Q; vector <int> v(N+1, -1); v[0] = 0; v[N] = 0; int s = 1, e = N+1, m; while (e > s){ m = (e+s)/2; int a = v[m-1], b = v[m], c = v[m+1]; if (a == -1){a = ask(m-1); v[m-1] = a;} if (b == -1){b = ask(m); v[m] = b;} if (c == -1){c = ask(m+1); v[m+1] = c;} if (b >= a && b >= c){ cout << "! " << m << " " << 1 << " " << 1 << endl; return 0; } else if (a > b)e = m; else s = m+1; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...