Submission #299085

#TimeUsernameProblemLanguageResultExecution timeMemory
299085erd1Rice Hub (IOI11_ricehub)C++14
100 / 100
28 ms2936 KiB
#include "ricehub.h" #include<bits/stdc++.h> using namespace std; #define ff first #define ss second #define all(x) (x).begin(), (x).end() #define pb push_back typedef int64_t lld; typedef pair<int, int> pii; vector<lld> v; int besthub(int R, int L, int X[], long long B) { int l = 0, r = R+1; v.pb(0); for(int i = 0; i < R; i++)v.pb(X[i]+v.back()); while(r-l > 1){ int d = (l+r)/2; bool fl = false; for(int i = 0; i+d-1 < R; i++){ int med = X[i+d/2]; lld dist = (v[i+d]-v[i+d/2])-(lld)med*(d-(d/2)) + (lld)med*(d/2)-(v[i+d/2]-v[i]); //cout << i << " " << i+d-1 << " " << dist << endl; if(dist <= B)fl = true; } if(fl)l = d; else r = d; } return l; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...