求助第一个点WA(样例本机过了,但是系统显示没过)
查看原帖
求助第一个点WA(样例本机过了,但是系统显示没过)
405851
peaceandlove2002楼主2021/9/22 16:18
#include <stdio.h>
int main()
{
	int m,n;
	long l;
	scanf("%ld %d %d",&l,&n,&m);
	int i,a[n+5],s;
	for(i=1;i<=n;i++){
		scanf("%d",&a[i]);
	}
	a[n+1]=l;
	long left=1,right=l,ans;
	while(left<=right){
		s=0;
		int now=0;
		int j=0;
		long mid=(right-left)/2+left;
		while(j<=(n+1)){
		   j++;
	       if((a[j]-a[now])<mid) s++;
	       else now=j;
		}
		if(s>m) right=mid-1;
		else {
		left=mid+1;ans=mid;}
	}
	printf("%ld",ans);
}
2021/9/22 16:18
加载中...