# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
145273 | 2019-08-19T12:56:58 Z | beso123 | Lost in the cycle (IOI19_cycle) | C++14 | 0 ms | 0 KB |
#include<bits/stdc++.h> #include "cycle.h" #define int long long using namespace std; /*bool jump(int x) { p = (p + x) % n; cout<<p<<endl; return (n - p) % n <= n / 2; }*/ void escape(int n){ int l=0,r=0; if(jump(0)){ l=0; r=n/2; } else{ l=n/2+1; r=n-1; } int h=0; while(r-l>1){ int mid=((l+r)/2)+h; h=n-(l+r)/2; if(jump(mid)) l=(l+r)/2; else r=(l+r)/2; } if(jump(h+r)) return; h=n-r; jump(h+l); return; }