#include<bits/stdc++.h>
using namespace std;
long long n,m,a[1000010],t;
bool shu(int x){
int ans=0;
for(int i=1;i<=n;i++){
long long p=0;
ans+=max(p,a[i]-x);
}
return ans>=m;
}
int main(){
cin>>n>>m;
long long ma=INT_MIN;
for(int i=1;i<=n;i++){
cin>>a[i];
ma=max(ma,a[i]);
}
int l=1,r=ma+1,mid;
while(l<=r){
mid=(l+r)/2;
if(shu(mid)){
l=mid+1;
}
else{
r=mid-1;
}
}
cout<<r;
}