关于D3T3
  • 板块学术版
  • 楼主flyos
  • 当前回复10
  • 已保存回复10
  • 发布时间2023/7/14 21:14
  • 上次更新2023/11/3 09:48:39
查看原帖
关于D3T3
490270
flyos楼主2023/7/14 21:14

为啥我二分寄了啊

#include<cstdio>
#define ll long long
ll max(ll a,ll b)
{
	return a>b?a:b;
}
int n;
ll a[500010],b[500010];
ll l,r,mid,ans;
bool check(ll x)
{
	ll now=a[1];
	for(int i=1;i<=n;i++)
	{
		if(now<a[i]) return 0;
		now=max(now,a[i]+b[i]+x);
	}
	return 1;
}
int main()
{
	scanf("%d",&n);
	for(int i=1;i<=n;i++) scanf("%lld%lld",&a[i],&b[i]);
	l=0,r=1e9;
	while(l+1<r)
	{
		mid=(l+r)>>1;
		if(check(mid)) r=mid;
		else l=mid;
	}
	printf("%lld",r);
	return 0;
}
2023/7/14 21:14
加载中...