제출 #522085

#제출 시각아이디문제언어결과실행 시간메모리
522085tabrLost in the cycle (IOI19_cycle)C++17
100 / 100
1 ms208 KiB
#include <bits/stdc++.h>
using namespace std;
#ifdef tabr
#include "library/debug.cpp"
#else
#define debug(...)
#endif

#ifdef tabr
bool jump(int);
#else
#include "cycle.h"
#endif

void escape(int n) {
    if (n == 2) {
        jump(1);
        return;
    }
    if (!jump(0)) {
        jump(n / 2);
    }
    int now = 0;
    int low = 0;
    int high = n / 2 + 1;
    while (high - low > 1) {
        int mid = (high + low) >> 1;
        int x = (mid - now + n) % n;
        bool ok = jump(x);
        now += x;
        now %= n;
        if (ok) {
            low = mid;
        } else {
            high = mid;
        }
    }
    int x = (low - now + n) % n;
    jump(x);
}

#ifdef tabr
int main() {
    ios::sync_with_stdio(false);
    cin.tie(0);
    return 0;
}
#endif
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...