#include <bits/stdc++.h>
using namespace std;
using ll = long long;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
freopen("MINING.INP","r",stdin);
freopen("MINING.OUT","w",stdout);
int n;
ll S;
cin >> n >> S;
vector<ll> a(n);
for (int i = 0; i < n; i++) cin >> a[i];
ll l = 0, r = *maxe(a.begin(), a.end());
ll ans = 0;
while (l <= r) {
ll mid = (l + r) / 2;
ll sum = 0;
for (ll x : a) {
if (x > mid) sum += x - mid;
}
if (sum >= S) {
ans = mid;
l = mid + 1;
} else {
r = mid - 1;
}
}
cout << ans;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnVzaW5nIGxsID0gbG9uZyBsb25nOyAKaW50IG1haW4oKSB7CiAgICBpb3M6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7CiAgICBjaW4udGllKG51bGxwdHIpOwogICAgZnJlb3BlbigiTUlOSU5HLklOUCIsInIiLHN0ZGluKTsKICAgIGZyZW9wZW4oIk1JTklORy5PVVQiLCJ3IixzdGRvdXQpOwogICAgaW50IG47CiAgICBsbCBTOwogICAgY2luID4+IG4gPj4gUzsKICAgIHZlY3RvcjxsbD4gYShuKTsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgaSsrKSBjaW4gPj4gYVtpXTsKICAgIGxsIGwgPSAwLCByID0gKm1heGUoYS5iZWdpbigpLCBhLmVuZCgpKTsKICAgIGxsIGFucyA9IDA7CiAgICB3aGlsZSAobCA8PSByKSB7CiAgICAgICAgbGwgbWlkID0gKGwgKyByKSAvIDI7CiAgICAgICAgbGwgc3VtID0gMDsKICAgICAgICBmb3IgKGxsIHggOiBhKSB7CiAgICAgICAgICAgIGlmICh4ID4gbWlkKSBzdW0gKz0geCAtIG1pZDsKICAgICAgICB9CiAgICAgICAgaWYgKHN1bSA+PSBTKSB7CiAgICAgICAgICAgIGFucyA9IG1pZDsgICAgCiAgICAgICAgICAgIGwgPSBtaWQgKyAxOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHIgPSBtaWQgLSAxOwogICAgICAgIH0KICAgIH0KICAgIGNvdXQgPDwgYW5zOwogICAgcmV0dXJuIDA7Cn0=