#include <bits/stdc++.h>
using namespace std;
long long a[500010];
int main() {
  long long n, k, i, j;
  while (scanf("%lld%lld", &n, &k) != EOF) {
    long long sum = 0;
    for (i = 0; i < n; i++) {
      scanf("%lld", &a[i]);
      sum += a[i];
    }
    sort(a, a + n);
    long long z1 = sum / n;
    long long z2 = (sum + n - 1) / n;
    long long t1 = 0, t2 = 0;
    long long l = 0, r = z1;
    while (l <= r) {
      long long mid = (l + r) >> 1;
      long long tmp = 0;
      for (i = 0; i < n; i++) {
        if (a[i] < mid) tmp += mid - a[i];
      }
      if (tmp <= k) {
        t1 = mid;
        l = mid + 1;
      } else {
        r = mid - 1;
      }
    }
    l = z2, r = 0x3f3f3f3f;
    while (l <= r) {
      long long mid = (l + r) >> 1;
      long long tmp = 0;
      for (i = 0; i < n; i++) {
        if (a[i] > mid) tmp += a[i] - mid;
      }
      if (tmp <= k) {
        t2 = mid;
        r = mid - 1;
      } else {
        l = mid + 1;
      }
    }
    printf("%lld\n", t2 - t1);
  }
  return 0;
}
