二分四十求助
查看原帖
二分四十求助
348898
Na2_CuCl4楼主2020/11/22 10:15
#include<bits/stdc++.h>
using namespace std;
const int NR=1e6 + 10;
int t[NR],ans; 
long long n,m;
bool check(int mi){
	int mile=0;
	for(int i=0;i<n;i++){
		mile+=max(0,t[i]-mi);
	}
	if(mile>=m)return true;
	else return false;
}
int main(){

	cin>>n>>m;
	for(int i=0;i<n;i++){
		cin>>t[i];
	}
	int l=0,r=1e9;
	while(l<=r){
		int mi=(l+r)/2;
		if(check(mi))l=mi+1;
		else r=mi-1;
	}
	cout<<l-1;
	return 0;
}


甚至看了题解,也找不出什么毛病,求助!

2020/11/22 10:15
加载中...