This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "gap.h"
#include <iostream>
#include <climits>
using namespace std;
const int nmax=100005;
long long v[nmax];
long long mx,st,dr,act,len,oldlen,inf,sup;
int n,i;
long long findGap(int T, int N)
{
n=N;
if(T==1)
{
mx=0;
v[0]=-1;v[n+1]=1LL*1e18;
v[n+1]++;//don't mess with 1e18
for(i=1;i<=n/2;i++)
{
MinMax(v[i-1]+1,v[n-i+2]-1,&v[i],&v[n-i+1]);
}
if((n&1))
{
MinMax(v[n/2]+1,v[n/2+2]-1,&v[(n+1)/2],&sup);
}
for(i=1;i<n;i++)
mx=1LL*max(mx,1LL*v[i+1]-v[i]);
return mx;
}
act=-1;len=1;oldlen=1;
bool bun=1;
long long mare=1LL*1e18;
MinMax(0,mare,&inf,&sup);
long long nn=n,ans=0;
long long def=(sup-inf)/(nn-1);
if((sup-inf)%(nn-1))
def++;
act=inf;
for(long long i=1;i<=n-1;i++)
{
bool ok=1;
while(ok&&i*def<=LLONG_MAX-act&&act+1LL*(i-1)*def<sup)
{
ok=0;
if(act!=-1)oldlen=len;
MinMax(act+1,min(act+1LL*i*def,mare),&st,&dr);
if(dr!=-1)
{
ans=max(st-act,ans);
act=dr;
ok=1;
}
}
}
return ans;
}
Compilation message (stderr)
gap.cpp: In function 'long long int findGap(int, int)':
gap.cpp:30:10: warning: unused variable 'bun' [-Wunused-variable]
bool bun=1;
^~~
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |