#include <bits/stdc++.h>
using namespace std;
ifstream fin("date.in");
ofstream fout("date.out");
int n,a,b,v[1000001],i,curent,nrcurent,Max;
int main(){
fin>>n>>a>>b;
for(i=1;i<=n;i++){
cin>>v[i];
}
sort(v+1,v+n+1);
Max=v[n]-v[n-a+1];
curent=Max;
nrcurent=a;
for(i=n-a;i>=a+1;i--){
if(v[i+1]-v[i]+curent<v[i]-v[i-a+1]&&nrcurent<b){
curent+=v[i+1]-v[i];
nrcurent++;
if(curent>Max)
Max=curent;
}
else{
curent=v[i]-v[i-a+1];
i=i-a+1;
nrcurent=a;
if(curent>Max)
Max=curent;
}
}
if(i!=1&&v[i]-v[1]>Max)
Max=v[i]-v[1];
cout<<Max;
return 0;
}
# | 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... |