제출 #904986

#제출 시각아이디문제언어결과실행 시간메모리
904986Macker쌀 창고 (IOI11_ricehub)C++17
0 / 100
10 ms3420 KiB
#include "ricehub.h" #include <bits/stdc++.h> using namespace std; typedef long long ll; typedef long double ld; #define all(v) v.begin(), v.end() //#pragma GCC optimize("Ofast") //#pragma GCC target("avx2") vector<ll> v; ll b, n; bool can(ll k){ ll med = v[k / 2]; ll dst = 0; for (ll i = 0; i < k / 2; i++) { dst += med - v[i]; } for (ll i = k / 2; i < k; i++) { dst += v[i] - med; } if(dst <= b) return true; ll lmed = med; for (ll i = k; i < n; i++) { med = v[(i + i - k + 1) / 2]; dst -= med - v[i - k]; dst += v[i] - lmed; if(dst <= b) return true; lmed = med; } return false; } int besthub(int R, int L, int X[], long long B) { v.assign(X, X+R); b = B; n = R; ll l = 0, r = R + 1, mid; while(l < r){ mid = (l + r + 1) / 2; if(can(mid)) l = mid; else r = mid - 1; } 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...