#include "ricehub.h"
using namespace std;
#include<bits/stdc++.h>
//solution to solve only subtask 1
int max_count = 0;
void maximize(int coordinate,int b, int a, int R,int X[],long long B,int count, long long total){
if(total > B||coordinate >= R||(b < 0 && a >= R)){
max_count = max(max_count,count);
return;
}
if(b >= 0 && a < R){
if(abs(coordinate-X[b])< abs(coordinate-X[a])){
maximize(coordinate,b-1,a,R,X,B,count+1,total+abs(coordinate-X[b]));
}
else{
maximize(coordinate,b,a+1,R,X,B,count+1,total+abs(coordinate-X[a]));
}
}
else if(b < 0 && a < R){
maximize(coordinate,b,a+1,R,X,B,count+1,total+abs(coordinate-X[a]));
}
else if(b >= 0 && a >= R){
maximize(coordinate,b-1,a,R,X,B,count+1,total+abs(coordinate-X[b]));
}
maximize(coordinate+1,coordinate,coordinate+1,R,X,B,0,0);
}
int besthub(int R, int L, int X[], long long B)
{
maximize(0,0,1,R,X,B,0,0);
return max_count;
}