100pts求助!!!
查看原帖
100pts求助!!!
739214
dmx7u19x楼主2023/10/20 09:27

二分答案 100分 Subtask #1 WA

#include<bits/stdc++.h>
using namespace std;

typedef long long ll;

ll l1,n,k;
ll a[100010];

bool ch(ll mid)
{
	ll ret=0;
	ll u=0;
	for(ll i=1;i<=n-1;i++)
	{
		ret+=floor((double)(a[i]-a[i-1])/mid-1);
	}
	if(ret>k)
		return 1;
	else
		return 0;
}

int main()
{
	cin>>l1>>n>>k;
	for(ll i=0;i<=n-1;i++)
	{
		cin>>a[i];
	}
	
	ll l=0;
	ll r=l1;
	ll ans=0;
	while(l<=r)
	{
		ll mid=l+(r-l)/2;
		if(ch(mid)==1)
		{
			l=mid+1;
		}
		else
		{
			r=mid-1;
			ans=mid;
		}
	}
	cout<<ans;
	return 0;
}

提交记录

2023/10/20 09:27
加载中...