#include <bits/stdc++.h>
using namespace std;
bool pd(long long s,int k,const vector <int> &v)
{
long long sum = 0;
for(int x : v)
if(s >= x)
{
sum += s - (x - 1);
if(sum > s * k) return 0;
}
return sum <= s * k;
}
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
int n,k;
cin >> n >> k;
vector <int> v(n);
for(int i = 0;i < n;i++) cin >> v[i];
long long l = 0,r = *max_element(v.begin(),v.end()) + k,ans = 0;
while(l <= r)
{
long long m = l + (r - l) / 2;
if(pd(m,k,v))
{
ans = m;
l = m + 1;
}
else r = m - 1;
}
cout << ans;
return 0;
}