#include <bits/stdc++.h>
using namespace std;
const int N = 51;
int n, a[N], p;
long long cnt[N][N];
long long ans[N];
long double fina[N];
int input = 0;
int main() {
  scanf("%d", &n);
  for (int i = 0; i < n; ++i) {
    scanf("%d", a + i);
    input += a[i];
  }
  scanf("%d", &p);
  if (input <= p) {
    cout << n << endl;
    return 0;
  }
  for (int i = 0; i < n; ++i) {
    memset(cnt, 0, sizeof(cnt));
    cnt[0][0] = 1;
    for (int j = 0; j < n; ++j) {
      if (j == i) continue;
      for (int sum = p - a[j]; sum >= 0; --sum) {
        for (int num = n - 1; num >= 0; --num) {
          cnt[num + 1][sum + a[j]] += cnt[num][sum];
        }
      }
    }
    for (int sum = p - a[i] + 1; sum <= p; ++sum) {
      for (int num = 0; num < n; ++num) {
        ans[num] += cnt[num][sum];
      }
    }
  }
  long double out = 0.;
  for (int i = 0; i < n; ++i) {
    fina[i] = ans[i];
    fina[i] *= i;
    for (int j = 1; j <= i; ++j) fina[i] *= (1. * j);
    for (int j = 1; j <= n - i - 1; ++j) fina[i] *= (1. * j);
    for (int j = 1; j <= n; ++j) fina[i] /= (1. * j);
    out += fina[i];
  }
  cout << out << endl;
  return 0;
}
