#include<bits/stdc++.h>
using namespace std;
long long n,m,a[1000005],tmp,l,r,ans;
bool check(long long x){
int addn = 0;
for(long long i = 1;i <= n;i ++) if(x < a[i]) addn += a[i] - x;
return m <= addn;
}
int main(){
cin >> n >> m;
for(long long i = 1;i <= n;i ++){
cin >> a[i];
r = max(r,a[i]);
}
while(l <= r){
long long mid = (l + r) >> 1;
if(check(mid)) l = (ans = mid) + 1;
else r = mid - 1;
}
cout << ans;
return 0;
}