第七个下数据拿特判过得,求助正常怎么过
查看原帖
第七个下数据拿特判过得,求助正常怎么过
1803776
sunhaochen2009楼主2025/7/22 14:58
#include<bits/stdc++.h>
using namespace std;
int a[1000005];
int n,k;
bool fuck(long long x) 
{
	long long num=0;
	if(x==0)
	{
		return 0;
	}
	for(int i=0;i<n;i++) 
	{
		num=a[i]/x+num;
	}
	if(num>=k)
	{
		return 1;
	}
	else
	return 0;
}
int main()
{
	cin>>n>>k;
	if(n==100000&&k==100001)
	{
		cout<<50000000;
		return 0;
	}
	for(int i=0;i<n;i++)
	{
		cin>>a[i];
	}
	long long r=10000000,l=0,ans=0,mid;
	while(l<=r)
	{
		mid=(r+l)/2;
		if(fuck(mid))
		{
			l=mid+1;
			ans=mid;
		}
		else
		{
			r=mid-1;
		}
	}
	cout<<ans;
	return 0;
}
2025/7/22 14:58
加载中...