Submission #718215

#TimeUsernameProblemLanguageResultExecution timeMemory
718215TigerpantsColors (BOI20_colors)C++17
0 / 100
0 ms208 KiB
#include <iostream> #include <vector> #include <set> #include <algorithm> #include <map> #include <functional> #include <numeric> using namespace std; typedef long long int ll; typedef vector<ll> vll; ll logll(ll x) { for (ll logx = 0; ; (x >>= 1) && (logx++)) if (x == 0) return logx; } bool ask(ll p) { cout << "? " << p << endl; bool answ; cin >> answ; return answ; } ll N; ll lower = 0; ll upper; ll P; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cin >> N; upper = 2 << logll(N - 1); P = (N + 2) / 3; ask(P); while ((lower + 1 < upper) && (lower < N - 1)) { ll mid = (upper + lower) / 2; if (2 * P > N) P -= mid; else P += mid; if (ask(P)) { upper = mid; } else { lower = mid; } } cout << "= " << min<ll>(N, upper) << endl; return 0; }
#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...