AC
2024-07-24 17:17:23
发布于:广东
8阅读
0回复
0点赞
#include<iostream>
#include<algorithm>
using namespace std;
const int N=1e6+15;
int main(){
long long m,s[N]={},right,left=0,mid,ans,c;
int n;
cin>>n>>m;
for(int i=0;i<n;i++)cin>>s[i];
right=*max_element(s,s+n);
while(left<=right){
c=0,mid=(left+right)/2;
for(int i=0;i<n;i++)if(s[i]>mid)c+=s[i]-mid;
if(c>=m)ans=mid,left=mid+1;
else right=mid-1;
}cout<<ans<<endl;
return 0;
}
这里空空如也
有帮助,赞一个