#include <bits/stdc++.h>
using namespace std;
const long long mod = 1e9 + 7;
const long long inf = 4e18;
int gcd(int a, int b) { return b ? gcd(b, a % b) : a; }
int lcm(int a, int b) { return a * b / gcd(a, b); }
double dp[55][55][55];
int a[55];
int main(void) {
  int n, i, j, k, p;
  scanf("%d", &n);
  for (i = 1; i <= n; ++i) scanf("%d", &a[i]);
  scanf("%d", &p);
  dp[0][0][0] = 1.0;
  for (i = 1; i <= n; ++i)
    for (j = 0; j <= i; ++j) {
      double temp = j * 1.0 / i;
      for (k = 0; k <= p; ++k) {
        dp[i][j][k] = dp[i - 1][j][k] * (1 - temp);
        if (a[i] <= k) dp[i][j][k] += dp[i - 1][j - 1][k - a[i]] * temp;
      }
    }
  double ans = 0;
  for (i = 1; i <= n; ++i)
    for (j = 0; j <= p; ++j) ans += dp[n][i][j];
  printf("%.10lf\n", ans);
  return 0;
}
