WA2点,90pts,大佬帮忙看看!
查看原帖
WA2点,90pts,大佬帮忙看看!
882092
zMinYu楼主2023/3/28 09:53
#include<bits/stdc++.h>
using namespace std;
long long l,n,m,d[50005];
long long check(long long x)
{
	long long cnt=0,i=1,tt=0;
	while(i<=n)
	{
		if(d[i]-d[tt]<x)
		{
			++cnt;
		}
		else tt=i;
		++i;
	}
	return cnt;
}
int main()
{
	cin>>l>>n>>m;
	for(long long i=1;i<=n;i++)
	{
		cin>>d[i];
	}
	d[n+1]=l;
	long long l=1,r=1e9+2,mid,ans;
	while(l<=r)
	{
		mid=(l+r)/2;
		if(check(mid)>m)
		{
			r=mid-1;
		}
		else if(check(mid)<=m)
		{
			l=mid+1;
			ans=mid;
		} 
	}
	cout<<ans;
	return 0;
}

提交记录

2023/3/28 09:53
加载中...