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 <iostream>
#include <vector>
#include <set>
using namespace std;
#define ll long long
int besthub(int R, int L, int X[], long long B)
{
ll ans = 0;
vector<multiset<int>> pos(L+1,multiset<int>());
for(ll i=0;i<R;i++){
// cout << max((ll)1,X[i]-B) << " " << min((ll)L,X[i]+B) << endl;
for(ll j=max((ll)1,X[i]-B);j<=min((ll)L,X[i]+B);j++){
// cout << j << " " << abs(X[i]-j) << endl;
pos[j].insert(abs(X[i]-j));
}
// cout << endl;
}
// cout << endl;
// for(ll i=1;i<=L;i++){
// cout << i << " -> ";
// for(ll j:pos[i]){
// cout << j << " ";
// }
// cout << endl;
// }
// cout << endl;
for(ll i=1;i<=L;i++){
ll sum = 0;
ll counter = 0;
// cout << i << " " << pos[i].size() << " ";
bool all = true;
for(ll j:pos[i]){
sum += j;
if(sum>=B){
all = false;
// cout << " " << sum << " " << counter;
ans = max(ans,counter);
break;
}
counter++;
}
if(all){
ans = max(ans,(ll)pos[i].size());
}
// cout << endl;
}
// cout << ans << endl;
return ans;
}
# | 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... |