#include <bits/stdc++.h>
using namespace std;
const int N = 52;
double dp[N][N];
double fact[N];
long long a[N];
long long p, n;
void init() {
  for (int j = 0; j < N; j++)
    for (int k = 0; k < N; k++) dp[j][k] = 0;
}
int main() {
  cin >> n;
  for (int i = 1; i <= n; i++) cin >> a[i];
  cin >> p;
  fact[0] = 1;
  for (int i = 1; i <= 50; i++) fact[i] = fact[i - 1] * double(i);
  int sum = 0;
  for (int i = 1; i <= n; i++) sum += a[i];
  if (sum <= p) {
    cout << n << endl;
    return 0;
  }
  double res = 0;
  for (int h = 1; h <= n; h++) {
    init();
    dp[0][0] = 1.0;
    for (int i = 1; i <= n; i++) {
      if (i == h) continue;
      for (int j = i; j >= 1; j--)
        for (int k = 0; k <= p; k++)
          if (j - 1 >= 0 && k - a[i] >= 0) dp[j][k] += dp[j - 1][k - a[i]];
    }
    for (int j = 0; j <= n; j++)
      for (int k = 0; k <= p; k++)
        if (a[h] + k > p) res = res + dp[j][k] * fact[j] * fact[n - j - 1] * j;
  }
  res = res / fact[n];
  printf("%.5f", res);
  return 0;
}
