70求助 过不了3,9,10
查看原帖
70求助 过不了3,9,10
1070628
nyk1315楼主2024/3/17 22:36
#include<bits/stdc++.h>
using namespace std;
int n,m,h[1000010],s;
int ef(int k){
	int l=1,r=s,mid,c;
	while(l<r){
		mid=(l+r)/2;
		c=0;
		for(int i=1;i<=n;i++)
			if(h[i]>mid)
				c+=h[i]-mid;
		if(k>c)
			r=mid;
		else
			l=mid+1;
	}
	return l;
}
int main(){
	cin>>n>>m;
	for(int i=1;i<=n;i++){
		cin>>h[i];
		if(s<h[i])
			s=h[i];
	}
	cout<<ef(m)-1; 
	return 0;
} 
2024/3/17 22:36
加载中...