来康康呗,大佬
#include<iostream>
using namespace std;
const int M = 5e4 + 10;
int d, m, n;
int a[M], mx = 0;
int main() {
cin >> d >> n >> m;
a[0] = 0;
for (int i = 1;i <= n;i ++) {
cin >> a[i];
}a[n + 1] = d;
int l = 1, r = d, ans;
while (l <= r) {
int mid = l + r >> 1, temp = 0, idx = 0;
for (int i = 0;i <= n + 1;i ++) {
if (a[i] - a[idx] < mid) temp ++;
else idx = i;
}
if (temp > m) {
r = mid - 1;
}
else {
ans = mid;
l = mid + 1;
}
cout << l << ' ' << r << ' ' << temp << endl;
}
cout << ans << endl;
return 0;
}