Submission #418308

#TimeUsernameProblemLanguageResultExecution timeMemory
418308AzimjonRice Hub (IOI11_ricehub)C++17
0 / 100
3 ms332 KiB
#include "ricehub.h" #include <bits/stdc++.h> using namespace std; int besthub(int R, int L, int X[], long long B) { auto cost = [&](int x, int y) { return abs(X[x] - X[y]); }; int ans = 1; int pb = B; int l, r; l = r = 0; for (; l + 1 < R;) { while (r + 1 < R) { int lm = (l + r) / 2; int cm = (l + r + 1) / 2; int cb = pb; if (lm != cm) { cb += (lm - l + 1) * cost(cm, lm); cb -= (r - cm + 1) * cost(cm, lm); } cb += cost(cm, r); if (cb > B) break; pb = cb; r++; } ans = max(ans, r - l + 1); // l++; int lm = (l + r) / 2; int cm = (l + r + 1) / 2; if (lm != cm) { pb += (lm - l + 1) * cost(cm, lm); pb -= (r - cm + 1) * cost(cm, lm); } pb -= cost(cm, l); l++; } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...