0分二分求助
查看原帖
0分二分求助
794188
furina_1013楼主2024/5/5 19:48
#include<bits/stdc++.h>
using namespace std;
int n;
int aaa,b;
long long ans;
int a[500005];
bool check(int x)
{	
	int sum=0;
	for(int i=1;i<=n;i++)
	{
		if(aaa*x>=a[i])a[i]=0;
		if(a[i]>aaa*x)a[i]-=aaa*x;
		sum+=a[i];
	}
	if(sum>x*b)return false;
	return true;
	
}
int main()
{
	cin>>n>>aaa>>b;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
	}
	int l=1,r=500000,aans=1,mid=0;
	while(l<=r)
	{
		mid=(l+r)/2;
		if(check(mid)==true)
		{
			aans=mid;
			r=mid-1;
		}
		else
		{
			l=mid+1;
		}
	}
	cout<<aans;
	return 0;
}
2024/5/5 19:48
加载中...