#include<iostream>
#include<algorithm>
using namespace std;
int main(){
int N;
long long int M;
cin>>N>>M;
int a[1000005];
int maxx=0;
int minn=9999999;
for(int i=1;i<=N;i++){
cin>>a[i];
if(a[i]>=maxx){
maxx=a[i];
}
if(a[i]<=minn){
minn=a[i];
}
}
long long int sum=0;
int ans=0;
int middle=(maxx+minn)/2;
while(minn<=maxx){
for(int i=1;i<=N;i++){
if(a[i]>middle){
sum+=a[i]-middle;
}
}
if(sum>M){
minn=middle+1;
middle=(maxx+minn)/2;
sum=0;
}else{
maxx=middle-1;
ans=middle;
middle=(maxx+minn)/2;
sum=0;
}
}
cout<<ans;
return 0;
}