Submission #554238

#TimeUsernameProblemLanguageResultExecution timeMemory
554238GurbanGap (APIO16_gap)C++17
12.76 / 100
50 ms1192 KiB
#include "bits/stdc++.h"
#include "gap.h"
using namespace std;

using ll = long long;

long long findGap(int T, int N)
{
	ll cep,sag;
	MinMax(1,(ll)1e18,&cep,&sag);
	assert(cep != -1 && sag != -1);
	ll now = cep,ans = 1;
	while(now < sag){
		ll nwa,nwb;
		MinMax(now + 1,now + ans + 1,&nwa,&nwb);
		if(nwa != -1){
			ans = max(ans,nwa - now);
			now = nwb;
			
			continue;
		}
		ans++;
		while(1){
			MinMax(now + 1,now + ans * 2,&nwa,&nwb);
			if(nwa != -1){
				ans = max(nwa - now,ans);
				now = nwb;
				break;
			}
			ans *= 2;
			ans++;
		}
	}
	return ans;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...