#include <bits/stdc++.h>
#include "ricehub.h"
using namespace std;
int besthub(int R, int L, int X[], long long B){
int ans=0;
for(int i=1;i<=R;i++){
vector<int>v;
for(int j=1;j<=R;j++)v.push_back(abs(X[i]-X[j]));
long long l=0,r=1e15+5,p=0;
while(l<=r){
int mid=(l+r)/2;
long long c=0;
for(auto it:v){
if(it<=mid)c+=it;
}
if(c<=B){
l=mid+1;
p=mid;
}
else {
r=mid-1;
}
}
int u=0;
for(int j=1;j<=R;j++){
if(abs(X[i]-X[j])<=p)u++;
}
ans=max(ans,u);
}
return ans;
}/*
signed main(){
int X[4]={0,10,12,14};
cout<<besthub(3,14,X,6);
}*/
/*
1 3
2 3
3 3
3
*/
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
0 ms |
344 KB |
Output is correct |
2 |
Correct |
0 ms |
344 KB |
Output is correct |
3 |
Correct |
0 ms |
348 KB |
Output is correct |
4 |
Correct |
1 ms |
348 KB |
Output is correct |
5 |
Correct |
0 ms |
348 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
0 ms |
500 KB |
Output is correct |
2 |
Correct |
0 ms |
348 KB |
Output is correct |
3 |
Execution timed out |
1075 ms |
348 KB |
Time limit exceeded |
4 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
1 ms |
348 KB |
Output is correct |
2 |
Correct |
1 ms |
348 KB |
Output is correct |
3 |
Execution timed out |
1072 ms |
348 KB |
Time limit exceeded |
4 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Execution timed out |
1065 ms |
928 KB |
Time limit exceeded |
2 |
Halted |
0 ms |
0 KB |
- |