Submission #212144

#TimeUsernameProblemLanguageResultExecution timeMemory
212144MarcoMeijerLost in the cycle (IOI19_cycle)C++14
44 / 100
5 ms512 KiB
#include "cycle.h"
#include <bits/stdc++.h>
using namespace std;

//macros
typedef long long ll;
typedef pair<int, int> ii;
typedef tuple<int, int, int> iii;
typedef vector<int> vi;
typedef vector<ii> vii;
typedef vector<iii> viii;
typedef vector<ll> vll;
#define REP(a,b,c) for(int a=int(b); a<int(c); a++)
#define RE(a,c) REP(a,0,c)
#define RE1(a,c) REP(a,1,c+1)
#define REI(a,b,c) REP(a,b,c+1)
#define REV(a,b,c) for(int a=int(c-1); a>=int(b); a--)
#define INF 1e9
#define pb push_back
#define fi first
#define se second
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());

void escape(int n) {
	if(n <= 30) {
		if(jump(0)) jump(n/2);
		while(1) {
			if(jump(1)) break;
		}
		jump(n/2);
		return;
	}
	int sz=n+1, prev=0;
	while(sz) {
		if(jump((sz+prev)%n)) {
			prev = 0;
		} else {
			prev = n-sz;
		}
		sz /= 2;
	}
	jump(prev);
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...