제출 #594324

#제출 시각아이디문제언어결과실행 시간메모리
594324Bench0310쌀 창고 (IOI11_ricehub)C++17
58 / 100
24 ms2520 KiB
#include <bits/stdc++.h>
#include "ricehub.h"

using namespace std;
typedef long long ll;

int besthub(int n,int L,int pos[],ll b)
{
    vector<ll> sum(n,0);
    for(int i=0;i<n;i++) sum[i]=(i>0?sum[i-1]:0)+pos[i];
    auto s=[&](int l,int r){return (sum[r]-(l>0?sum[l-1]:0));};
    int res=0;
    for(int i=0;i<n;i++)
    {
        int l=0,r=n;
        while(l<r-1)
        {
            int m=(l+r)/2;
            int cl=m/2;
            int cr=(m+1)/2;
            int x=i-cl;
            int y=i+cr;
            bool ok=0;
            if(0<=x&&y<n) ok=(cl*ll(pos[i])-s(x,i-1)+s(i+1,y)-cr*ll(pos[i])<=b);
            if(ok) l=m;
            else r=m;
        }
        res=max(res,l+1);
    }
    return res;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...