# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
895780 | 2023-12-30T20:15:47 Z | vjudge1 | 쌀 창고 (IOI11_ricehub) | C++17 | 0 ms | 0 KB |
#include <bits/stdc++.h> using namespace std; #define ll long long int ll besthub(ll N, ll L, ll A[], long long B) { vector<ll> p(N + 1); p[0] = 0; for (ll i = 1; i <= N; i++) { p[i] = A[i - 1]; p[i] += p[i - 1]; } ll ans = 0; for (ll i = 1; i <= N; i++) { ll temp = 1; while (temp <= N - 1) { ll median = (temp + i) / 2 + 1; ll sum = (p[temp + 1] - p[median]) - (temp + 1 - median) * A[median - 1] + (median - (i - 1)) * A[median - 1] - (p[median] - p[i - 1]); if (sum > B) { break; } temp++; } ans = max(ans, temp - (i - 1)); } return ans; } // ll main() { // ios_base::sync_with_stdio(0); // cin.tie(0); // cout.tie(0); // ll R, L; // cin >> R >> L; // ll X[R]; // for (ll i = 0; i < R; i++) { // cin >> X[i]; // } // ll B; // cin >> B; // cout << besthub(R, L, X, B) << "\n"; // }