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 <bits/stdc++.h>
#include "ricehub.h"
using namespace std;
typedef long long ll;
ll prefs[100010];
ll cost(int l, int r, int *x)
{
int m=(l+r)/2;
return prefs[r+1]-prefs[m+1]-(r-m)*x[m]-prefs[m]+prefs[l]+(m-l)*x[m];
}
int besthub(int R, int L, int *X, ll B)
{
prefs[0]=0;
for(int i=1; i<=R; i++)prefs[i]=prefs[i-1]+X[i-1];
ll k=0, ans=0;
for(int i=0; i<R; i++)
{
while(cost(k, i, X)>B and k<i)k++;
//cout<<cost(k, i, X)<<endl;;
ans=max(i-k+1, ans);
}
//cout <<cost(0, 4, X)<<endl;
return ans;
}
/*int main()
{
int r, l, x[100010];
ll b;
cin>>r>>l>>b;
for(int i=0; i<r; i++)cin>>x[i];
//cin>>b;
cout<<besthub(r, l, x, b);
return 0;
}*/
# | 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... |