60pts求助
查看原帖
60pts求助
522342
lynotsb楼主2021/12/3 12:57
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<string>
#include<cstring>
#include<cmath>
using namespace std;
int cd,n,m,l,r,mid;
int a[1000010];
bool fun(int x)
{
	int aa=0,bb=0;
	for(int i=1;i<=n;i++)
	{
		if(a[i]-bb<x)aa++;
		else bb=a[i];
	}
	return aa<=m;
}
int main()
{
	cin>>cd>>n>>m;n++;
	for(int i=1;i<=n-1;i++)scanf("%d",&a[i]);
	sort(a+1,a+1+n);
	a[n]=cd;
	r=cd+1;
	while(l+1<r)
	{
		mid=(l+r)/2;
		if(fun(mid))l=mid;
		else r=mid;
	}
	cout<<l;
	
	return 0;
}

请问哪错了

2021/12/3 12:57
加载中...