Submission #112974

#TimeUsernameProblemLanguageResultExecution timeMemory
112974andremfqRice Hub (IOI11_ricehub)C++17
100 / 100
21 ms4096 KiB
#include<bits/stdc++.h> #include"ricehub.h" #define debug(args...) //fprintf(stderr,args) using namespace std; const int MAXR=100010; int R,L,X[MAXR]; long long int sp1[MAXR],sp2[MAXR],x[MAXR]; long long int B; int resp; int besthub(int r,int l,int v[],long long int b) { sort(v,v+r); for(int i=0;i<r;i++) x[i+1]=v[i]; for(int i=1;i<=r;i++) sp1[i]=sp1[i-1]+x[i]; for(int i=r;i>0;i--) sp2[i]=sp2[i+1]+(l-x[i]); int ini=1, fim=1; while(fim<=r) { if(ini>fim) fim++; int m=(ini+fim)/2; long long int op1=sp1[fim]-sp1[m]-((fim-m)*(x[m])); long long int op2=sp2[ini]-sp2[m]-((m-ini)*(l-x[m])); debug("op1 = %d op2 = %d ini = %d fim = %d\n",op1,op2,ini,fim); if(op1+op2<=b) resp=max(resp,fim-ini+1), fim++; else ini++; } return resp; } /* int main () { scanf("%d %d",&R,&L); for(int i=0;i<R;i++) scanf("%d",&X[i]); scanf("%lld",&B); int RESP=besthub(R,L,X,B); printf("%lld\n",RESP); } /* 5 20 1 2 10 12 14 6 */

Compilation message (stderr)

ricehub.cpp:54:1: warning: "/*" within comment [-Wcomment]
 /*
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...