求助求助
查看原帖
求助求助
790942
Muneyoshi楼主2022/11/27 16:54
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int d, m, n,ans;
int a[100000];
int judge(int x)
{
	int tot = 0 ,i = 0, now = 0;
	while (i < n + 1)
	{
		i++;
		if (a[i] - a[now] < x)
		{
			tot++;
		}
		else
		{
			now = i;
		}
	}
	if (tot > m)return 0;
	else return 1;
}
int main()
{
	scanf("%d %d %d",&d,&n,&m);
	int i;
	for (i = 1; i <= n; i++)
	{
		scanf("%d",&a[i]);
	}
	a[n + 1] = d;
	int l = 1, r=d, mid;
	while (l <= r)
	{
		mid = (l + r) / 2;
		if (judge(mid))
		{
			ans = mid;
			l = mid + 1;
		}
		else r = mid - 1;
	}
	printf("%d",ans);
	return 0;
}

第3个WA了,怎么回事啊

2022/11/27 16:54
加载中...