/// Minimizing Difference
/// Author: Qwerty
#include<bits/stdc++.h>
using namespace std;
const int MAXN = 1e5 + 100;
int n;
long long k;
long long a[MAXN];
long long b[MAXN];
int main(){
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cin >> n >> k;
    for (int i = 1; i <= n; i++) cin >> a[i];
    sort(a + 1, a + n + 1);
    for (int i = 1; i < n; i++){
         b[i] = a[i + 1] - a[i];
    }
    int l = 1;
    int r = n - 1;
    long long c = 1;
    int ans = a[n] - a[1];
    while (l < r){
        long long s = min(k, (b[l] + b[r]) * c);
        ans -= s / c;
        k -= s;
        c++;
        l++;
        r--;
    }
    if (l == r){
        long long s = min(k, b[l] * c);
        ans -= s / c;
        k -= s;
    }
    cout << ans << '\n';
}
