Submission #28918

#TimeUsernameProblemLanguageResultExecution timeMemory
28918NikeforRice Hub (IOI11_ricehub)C++98
0 / 100
1000 ms5060 KiB
#include "ricehub.h"
#include<algorithm>
int field[10001];
int besthub(int R, int L, int X[], long long B)
{
    int optimalGain=0;
    int m, l, r;
    l = r = m = 0;
    long long spent = 0;
    int localGain = 0;


        while(r<R) {
            if(r!=(R-1))r++;
            m = ((r-l)%2)?(r+l+1)/2:(r+l)/2;
            spent+= X[r]-X[m];
            if(spent>B) {
                optimalGain = std::max(optimalGain, localGain);
                while(spent>B) {
                    l++;
                    spent-= X[l]-X[m];
                    m = ((r-l)%2)?(r+l+1)/2:(r+l)/2;
                    localGain--;
                }

                continue;
            }
            localGain++;
        }


  return optimalGain ;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...