Submission #599130

#TimeUsernameProblemLanguageResultExecution timeMemory
599130pakhomoveeThe Big Prize (IOI17_prize)C++17
20 / 100
5 ms300 KiB
#include "prize.h"
#include <vector>

int find_best(int n) {
    int pr = 0;
    int have = 0;
    while (pr != n) {
        int l = pr, r = n;
        while (l + 1 < r) {
            int m = (l + r) / 2;
            if (ask(m)[0] - have) {
                r = m;
            } else {
                l = m;
            }
        }
        std::vector<int> arr = ask(l);
        if (arr[0] == arr[1] && arr[0] == 0) {
            return l;
        }
        pr = l + 1;
        ++have;
    }
    return -1;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...