#include <bits/stdc++.h>
using namespace std;
const int INF = 1e9;
const int N = 220;
int n, k, m, p;
long double sum, res;
long long a[N], dp[N][N], q[N];
int main() {
  ios_base::sync_with_stdio(0);
  cin >> n;
  for (int i = 1; i <= n; i++) {
    cin >> a[i];
    sum += a[i];
  }
  cin >> p;
  if (p >= sum) {
    cout << fixed << setprecision(7) << 1.0 * n;
    return 0;
  }
  dp[0][0] = q[0] = 1;
  for (int i = 1; i <= n; i++)
    for (int j = n; j >= 1; j--)
      for (int k = p; k >= a[i]; k--) dp[j][k] += dp[j - 1][k - a[i]];
  long double val = 1;
  for (int i = 1; i <= n; i++) {
    val *= ((long double)i) / ((long double)(n - i + 1));
    for (int j = 1; j <= p; j++) res += dp[i][j] * val;
  }
  cout << fixed << setprecision(7) << res;
  return 0;
}
