#include <bits/stdc++.h>
using namespace std;
const int i = 1 << 18;
int a[100];
long double f[i];
void m(int e, long double y) {
  int w = 1, t;
  for (t = i >> 2; t; t >>= 1) {
    w <<= 1;
    if (e >= t) {
      e -= t;
      f[w] += y;
      w++;
    }
  }
}
int main() {
  int q, w, e, r, t, sum = 0, maxl = 0, c, v;
  long double ans = 0;
  cin >> q >> w;
  if (w == 1) {
    cout << 1;
    return 0;
  }
  for (e = 0; e < q; e++) {
    cin >> a[e];
    sum += a[e];
  }
  for (e = 0; e < i; e++) f[e] = 0;
  f[i / 2] = w - 1;
  long double v1 = 0;
  for (e = 0; e < q; e++) {
    for (r = maxl; r >= 0; r--) {
      v1 = 0;
      for (c = (i >> 1) + r; c; c >>= 1) v1 += f[c];
      f[(i >> 1) + r] -= v1;
      v1 /= w - 1;
      m(r + w + 1, v1);
      m(r + a[e] + 1, -v1);
      m(r + a[e], v1);
      m(r + 1, -v1);
    }
    maxl += w;
  }
  for (e = 0; e <= maxl; e++) {
    v1 = 0;
    for (c = (i >> 1) + e; c; c >>= 1) v1 += f[c];
    if (e < sum) ans += v1;
  }
  printf("%.10f", ((double)(ans + 1.0)));
  return 0;
}
