# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
335594 | Joshc | Rice Hub (IOI11_ricehub) | C++11 | 0 ms | 0 KiB |
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 "grader.h"
#include "ricehub.h"
#include <algorithm>
using namespace std;
int besthub(int R, int L, int X[], long long B) {
int left=0, right=0, best=0;
long long total=0;
while (left != R-1) {
if (right >= R) break;
int mid = (left+right)>>1;
if (total+X[right]-X[mid] <= B) {
total += X[right]-X[mid];
best = max(best, right-left+1);
right++;
} else {
total -= X[mid] - X[left];
left = min(left+1, R-1);
if (right==R-1) break;
}
}
return best;
}