88求调
查看原帖
88求调
914413
xiaozhichen123楼主2024/2/28 17:07
#include<bits/stdc++.h>
using namespace std;
int n,m,ans,l=0,r=-1,a[1000001],k;
bool czh(int zzh){
	long long sum=0;
	for(int i=1;i<=n;i++){
		if(a[i]-zzh>0){
			sum+=a[i]/zzh;
		}
	}
	return sum>=m;
}
int main(){
	cin>>n>>m;
	for(int i=1;i<=n;i++){
		cin>>a[i];
		r=max(r,a[i]);
	}
	while(l<=r){
		int mid=l+(r-l)/2;
		if(czh(mid)){
			ans=mid;
			l=mid+1;
		}else{
			r=mid-1;
		}
	}
	cout<<ans;
}
2024/2/28 17:07
加载中...