#include<bits/stdc++.h>
using namespace std;
long long n,m,a[1000100],o;
int main(){
    cin>>n>>m;
    for(int i=1;i<=n;i++){
        cin>>a[i];
        o=max(o,a[i]);
    }
    int l=1;
    long long r=o;
    while(l<=r){
        long long ans=0;
        long long k=(l+r)/2;
        for(int i=1;i<=n;i++){
        if(a[i]>k)ans+=(a[i]-k);
         }
        if(ans==m){
            cout<<l-1;
            return 0;
        }
        else if(ans<m){
            r=k-1;
        }
        else if(ans>m){
            l=k+1;
        }
    }
    return 0;
}
/**************************************************************
	Problem: 1908
	User: zengdongxin
	Language: C++
	Result: Wrong Answer
****************************************************************/