제출 #1348395

#제출 시각아이디문제언어결과실행 시간메모리
1348395kantaponz쌀 창고 (IOI11_ricehub)C++20
0 / 100
0 ms344 KiB
#include "ricehub.h"
#include <bits/stdc++.h>
using namespace std;

#define ll long long

int n;
ll qs[100005];

int besthub(int R, int L, int X[], long long B)
{
    n = R;
    qs[0] = X[0];
    for (int i = 1; i < n; i++) qs[i] += X[i] + qs[i - 1];
    ll l = 0, r = n - 1;
    ll cost = 1e18;
    while (1) {
        int mid = (l + r) / 2;
        int idx = upper_bound(X, X + R, X[mid]) - X - 1;
        cost = (idx - l + 1) * (X[mid]) - (qs[idx] - qs[l - 1]) + (qs[r] - qs[idx]) - (r - idx) * X[mid];
        if (cost > B) {
            if (X[mid]-X[l] > X[r]-X[mid]) l++;
            else r--;
        } else {
            break;
        }
    }

    return r - l + 1;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...