#include<bits/stdc++.h>
using namespace std;
long long a[1000005];
long long maxx,m,n,i,j,k,ans,sum;
long long erfen(long long l,long long r)
{
sum=0;
if(l==r)
{
return ans;
}
long long mid=(l+r)/2;
if(mid>maxx)
{
return erfen(l,mid-1);
}
for(m=1;m<=i;m++)
{
if(a[m]>=mid)
{
sum+=a[m]-mid;
}
}
if(sum>=j)
{
ans=mid;
return erfen(mid+1,r);
}
else
{
return erfen(l,mid-1);
}
}
int main()
{
freopen("P1873_2.in","r",stdin);
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
cin>>i>>j;
for(k=1;k<=i;k++)
{
cin>>a[k];
if(a[k]>=maxx)
{
maxx=a[k];
}
}
long long anss=erfen(1,1e9);
cout<<anss;
}