#include<bits/stdc++.h>
using namespace std;
long long n,m;
long long h[1000005];
long long height;
long long judge(long long x)
{
long long sum=0;
for(int i=1;i<=n;i++)
{
if(h[i]>x)
{
sum+=h[i]-x;
}
}
return sum;
}
int main()
{
cin>>n>>m;
for(int i=1;i<=n;i++)
{
cin>>h[i];
}
sort(h+1,h+1+n);
long long minh=0;
long long maxh=h[n];
while(minh<maxh)
{
long long midh=(minh+maxh)/2;
if(judge(midh)==m)
{
cout<<midh;
return 0;
}
else if(judge(midh)<m)
{
maxh=midh-1;
}
else if(judge(midh)>m)
{
minh=midh+1;
}
}
cout<<maxh;
return 0;
}