Submission #132712

#TimeUsernameProblemLanguageResultExecution timeMemory
132712MoNsTeR_CuBeThe Big Prize (IOI17_prize)C++17
97.78 / 100
59 ms504 KiB
#include "prize.h" #include <bits/stdc++.h> #define pii pair<int,int> using namespace std; vector <int> v; int go (int l, int r, pii left, pii right) { if (l > r) { return -1; } int mid = (l + r) >> 1; v = ask(mid); pii c = {v[0], v[1]}; if (v[0] == 0 && v[1] == 0) { return mid; } if (l == r) { return -1; } int ret = -1; if (c.second > 0 && c != right) { ret = go(mid + 1, r, c, right); } if (ret == -1 && c.first > 0 && c != left) { ret = go(l, mid - 1, left, c); } return ret; } int find_best(int n) { return go(0, n - 1, {-1, -1}, {-1, -1}); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...