이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define pb push_back
int besthub(int R, int L, int X[], ll B) {
vector <ll> arr(R + 1, 0), p(R + 1, 0), pr(R + 2, 0);
for (int i = 0; i < R; ++i) {
arr[i + 1] = X[i];
}
for (ll i = 1; i <= R; ++i) {
p[i] = (arr[i] - arr[i - 1]) * (i - 1) + p[i - 1];
}
for (ll i = R; i > 0; i--) {
pr[i] = (arr[i + 1] - arr[i]) * (R - i) + pr[i + 1];
}
ll l = 1, r = 1, jogap = 1;
while (l <= R and r <= R) {
ll md = (l + r + 1) / 2;
ll sum = p[md] - p[l - 1] - ((l - 1) * (arr[md] - arr[l - 1]));
ll sum1 = pr[md] - pr[r + 1] - ((R - r) * (arr[r + 1] - arr[md])); // yalnysh su
ll sum2 = sum + sum1;
if (sum2 <= B) {
r++;
}
else {
// l r -1
jogap = max (jogap, r - l);
l++;
}
}
jogap = max (jogap, r - l);
return jogap;
}
# | 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... |