Submission #563324

#TimeUsernameProblemLanguageResultExecution timeMemory
5633241neRice Hub (IOI11_ricehub)C++14
0 / 100
1086 ms2252 KiB
//#include "ricehub.h" #include<bits/stdc++.h> using namespace std; int besthub(int R, int L, int X[], long long B) { int ans = 1; vector<int64_t>pref(R + 1,0),dpref(R + 1,0); for (int i = 0 ;i<R - 1;++i){ pref[i + 1] = pref[i] + (X[i + 1] - X[i]); dpref[i + 2] = pref[i + 1] + dpref[i + 1]; } auto dist = [&](int l,int r){ return pref[r] * (r - l) - dpref[r] + dpref[l]; }; auto distt = [&](int l,int r){ int64_t cost = dist(l,r); for (int j = l + 1;j<=r;++j){ cost = min(cost,dist(l,j) + dist(j,r)); } return cost; }; for (int r = 0, l = 0; r < R; r++) { while (true) { //int mid = (l + r) >> 1; if (distt(l,r) <= B) break; l++; } ans = max(ans, r - l + 1); } 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...