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 "ricehub.h"
#include <stdlib.h>
int besthub(int R, int L, int X[], long long B)
{
int i, j, left=1, mid, right=R, x, ok, ans;
long long hab;
while(left<=right)
{
mid=(left+right)/2;
x=(mid-1)/2;
hab=ok=0;
for(i=0 ; i<mid ; i++)
hab+=abs((long long)X[x]-(long long)X[i]);
if(hab<=B)
ok=1;
for(i=1 ; i<=R-mid ; i++)
{
j=i+mid-1;
if(mid%2)
hab-=(long long)X[x++]-(long long)X[i-1];
else
hab-=(long long)X[++x]-(long long)X[i-1];
hab+=(long long)X[j]-(long long)X[x];
if(hab<=B)
ok=1;
}
if(ok)
{
left=mid+1;
ans=mid;
}
else
right=mid-1;
}
return ans;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |