附加点WA,求指正QAQ
查看原帖
附加点WA,求指正QAQ
1147014
winnie2013楼主2025/6/14 14:03
#include<bits/stdc++.h>
#define int long long
using namespace std;
int L,n,m,a[50005],b[50005],l,r,mid,s; 
signed main()
{
	cin>>L>>n>>m;
	for(int i=1;i<=n;i++) 
	{
		scanf("%lld",&a[i]);
		b[i]=a[i]-a[i-1];
	}
	n++;
	a[n]=L;
	b[n]=L-a[n-1];
	l=0,r=L+1;
	while(l+1<r) 
	{
		s=0;
		mid=(l+r)/2;
		for(int i=1;i<n;i++) {
			if(b[i]<mid) {
				s++;
				b[i+1]+=b[i];
			}
			b[i]=a[i]-a[i-1];
		}
		if(s<=m) l=mid;
		else r=mid;
	}
	printf("%lld",l);
	
	return 0;
}
2025/6/14 14:03
加载中...