#include <bits/stdc++.h>
using namespace std;
const int N=1e5+9;
int a[N];
int n,m;
int check(int mid)
{
int res=0; //lst表示上一个的位置
for(int i=1,lst=0;i<=n;i++){
if(lst&&a[i]-a[lst]<mid) continue;
res++,lst=i;
}
return res;
}
int main()
{
// 请在此输入您的代码
cin>>n>>m;
for(int i=1;i<=n;i++) cin>>a[i];
sort(a+1,a+1+n);
int l=0,r=1e9+5;
while(l+1!=r)
{
int mid=(l+r)/2;
if(check(mid)>=m) l=mid;
else r=mid;
}
cout<<l;
return 0;
}
lanqiao OJ3683 肖恩的苹果林
最新推荐文章于 2024-07-25 21:13:04 发布