硬是在电脑前一动不动30分钟......快疯了
#include<bits/stdc++.h>
long long m,n,h[1000000+10];
int zhen,l,r;
int main(){
scanf("%lld%lld",&n,&m);
for(int i=1;i<=n;i++){
scanf("%lld",&h[i]);
if(h[i]>r) r=h[i];
}
while(l<=r){
int mid=(l+r)/2;
zhen=0;
for(int i=1;i<=n;i++)
if(h[i]>mid) zhen+=h[i]-mid;
if(zhen<m) r=mid-1;
else l=mid+1;
}
printf("%lld",r);
return 0;
}