思路:二分答案模板题
#include <bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
#define endl '\n';
typedef long long ll;
typedef pair<int,int> PII;
const int N=5e5+10,mod=1e9+7;
ll n,a[N],k;
int check(ll mid){
ll ans=0;
for(int i=1;i<=n;i++) {
if(a[i]<mid)ans+=(mid-a[i]);
}
if(ans<=k) return 1;
return 0;
}
int main(){
IOS;
cin>>n>>k;
ll l=0,r=0;
for(int i=1;i<=n;i++){
cin>>a[i];
r=max(a[i],r);
}
r+=k;
while(l<r){
ll mid=(l+r+1)>>1;
if(check(mid)) l=mid;
else r=mid-1;
}
cout<<l<<endl;
return 0;
}