This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "ricehub.h"
#include<bits/stdc++.h>
#include "ricehub.h"
#include <stdio.h>
#include <stdlib.h>
#define MAX_R 1000000
using namespace std;
/*static int R, L;
static long long B;
static int X[MAX_R];
static int solution;
inline
void my_assert(int e) {if (!e) abort();}
static void read_input()
{
int i;
my_assert(3==scanf("%d %d %lld",&R,&L,&B));
for(i=0; i<R; i++)
my_assert(1==scanf("%d",&X[i]));
my_assert(1==scanf("%d",&solution));
}
int main()
{
freopen("grader.in.1", "r", stdin);
int ans;
read_input();
ans = besthub(R,L,X,B);
if(ans==solution)
printf("Correct.\n");
else
printf("Incorrect. Returned %d instead of %d.\n",ans,solution);
return 0;
}*/
int besthub(int R, int L, int X[], long long B)
{
int enIyi = 0, k = 1;
int sag = 0, sol = 0;
long long toplam = 0;
while(1) {
int orta = (sol + sag + 1) / 2;
if(toplam > B) {
toplam -= (X[orta] - X[sol]);
sol++;
k--;
}
else if(sag < R-1){
enIyi = max(k, enIyi);
k++;
sag++;
toplam += (X[sag] - X[orta]);
}
else break;
}
enIyi = max(k, enIyi);
return enIyi;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |