#include <bits/stdc++.h>
using namespace std;
const int INF = 1000001000;
const long long INFL = 2000000000000001000;
int solve();
int main() {
  srand(2317);
  cout.precision(15);
  cout.setf(ios::fixed);
  int tn = 1;
  for (int i = 0; i < tn; ++i) solve();
}
const int maxn = 1005;
const int maxw = 100005;
int a[maxn];
long double cnt[2][maxw];
int solve() {
  int n, m;
  cin >> n >> m;
  if (m == 1) {
    cout << 1 << '\n';
    return 0;
  }
  int mysum = 0;
  for (int i = 0; i < int(n); ++i) {
    scanf("%d", a + i);
    mysum += a[i];
  }
  int qw = 0;
  cnt[qw][0] = 1;
  for (int i = 0; i < int(n); ++i) {
    for (int w = 0; w < int(maxw); ++w) cnt[qw ^ 1][w] = 0;
    long double sumc = 0;
    for (int w = 0; w < int(maxw); ++w) {
      long double goodsumc = sumc;
      if (w >= a[i]) goodsumc -= cnt[qw][w - a[i]];
      cnt[qw ^ 1][w] = goodsumc;
      sumc += cnt[qw][w];
      if (w - m >= 0) sumc -= cnt[qw][w - m];
    }
    qw ^= 1;
  }
  long double DIV = 1;
  for (int i = 0; i < int(n); ++i) DIV *= m - 1;
  long double res = 1;
  for (int w = 0; w < int(mysum); ++w) res += (m - 1) * cnt[qw][w] / DIV;
  cout << res << '\n';
  return 0;
}
