#include "gap.h"
#include <bits/stdc++.h>
using namespace std;
long long findGap(int t, int n)
{
if(t==1){
long long arr[n];
long long s = 0;
long long t = 1e18;
for(int i = 0;i<(n+1)/2;i++){
MinMax(s,t,&arr[i],&arr[n-i-1]);
s=arr[i]+1;
t=arr[n-i-1]-1;
}
long long ans = 0;
for(int i = 0;i<n-1;i++){
ans=max(ans,arr[i+1]-arr[i]);
}
return ans;
}
else if(t==2){
long long mn,mx;
MinMax(0,1e18,&mn,&mx);
long long ans = (mx-mn+n-2)/(n-1);
long long x = ans-1;
long long l = mn+1;
long long las = l;
while(l<mx){
long long cmn,cmx;
MinMax(l,l+x,&cmn,&cmx);
if(cmn==-1){
l=l+x+1;
continue;
}
ans=max(ans,cmn-las);
l=l+x+1;
las=cmx;
}
return ans;
}
}
Compilation message (stderr)
gap.cpp: In function 'long long int findGap(int, int)':
gap.cpp:44:1: warning: control reaches end of non-void function [-Wreturn-type]
44 | }
| ^
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |