Submission #116540

#TimeUsernameProblemLanguageResultExecution timeMemory
116540Runtime_error_Rice Hub (IOI11_ricehub)C++14
100 / 100
18 ms3328 KiB
//IOI 2011 Day1 Problem 3 rice hub //Full solution #include "ricehub.h" //for CMS //#include "grader.h" //for yandex #include <bits/stdc++.h> #define ll long long using namespace std; const ll inf=1e5+9; ll pre[inf],a[inf],N,K; bool check(ll len){ for(ll i=len;i<=N;i++){ ll r=i,l=i-len+1,mid=(l+r)/2; ll cost=(pre[r]-pre[mid]) -(a[mid]*(r-mid)); cost+=(a[mid]*(mid-l))-(pre[mid-1]-pre[l-1]); if(cost<=K) return 1; } return 0; } int besthub(int n,int m,int x[],ll k){ N=n; K=k; for(ll i=0;i<n;i++) a[i+1]=x[i]; for(ll i=1;i<=n;i++) pre[i]=pre[i-1]+a[i]; ll ans=0; ll l=1,r=n+1; while(r-l>1){ ll mid=(l+r)/2; if(check(mid)) l=mid; else r=mid; } return (int)l; }

Compilation message (stderr)

ricehub.cpp: In function 'int besthub(int, int, int*, long long int)':
ricehub.cpp:35:8: warning: unused variable 'ans' [-Wunused-variable]
     ll ans=0;
        ^~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...