#include "ricehub.h"
#include <bits/stdc++.h>
#define ll long long
using namespace std;
int besthub(int R, int L, int x[], long long B)
{
long long pref[R+2];
pref[0]=0;
for(int i=1;i<=R;i++) pref[i]=pref[i-1]+x[i-1];
ll ans=0;
for(int i=1;i<=R;i++){
ll l=i,r=R,an=-1;
while(l<=r){
ll mid=(l+r)/2;
ll med=(i+mid)/2;
if(pref[mid]-pref[med]-(mid-med)*x[med-1]+(med-i)*x[med-1]-(pref[med-1]-pref[i-1])<=B){
an=mid;
l=mid+1;
} else {
r=mid-1;
}
}
if(ans!=-1) ans=max(ans,an-i+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... |