@[Aoxiangcar](/user/969320) 要用二分
by 44i11 @ 2023-12-01 23:02:05
@[44i11](/user/785767) @[Aoxiangcar](/user/969320)
```c
#include <bits/stdc++.h>
using namespace std;
int n, m;
int l[1000005];
bool check(int x)
{
int last = l[1], cnt = 1;
for(int i = 2; i <= n; i++)
{
if(l[i] - last >= x)
{
last = l[i];
cnt++;
}
}
return cnt >= m;
}
int main()
{
cin >> n >> m;
for(int i = 1; i <= n; i++)
{
cin >> l[i];
}
sort(l + 1, l + n + 1);
int l = 1, r = 1e9, ans = 0;
while(l <= r)
{
int mid = (l + r) / 2;
if(check(mid))
{
l = mid + 1;
ans = mid;
}
else
{
r = mid - 1;
}
}
cout << ans << endl;
return 0;
}
```
by hehe_666 @ 2024-09-08 10:01:55