func_code_string: #include <bits/stdc++.h>   using namespace std;   const int N = 100, M = 10000;   int n, m, a[N + 9], ca;   double x, ans;   void into() {     scanf( %d%lf , &n, &x);     int p = 0;     for (int i = 1; i <= n; ++i) {       int t;       scanf( %d , &t);       t << 1 <= x ? ans += t : m += a[++ca] = t;     }     x /= 2;   }   double dp[N + 9][M + 9];   void Get_dp() {     dp[0][0] = 1;     for (int i = 1; i <= ca; ++i)       for (int j = i; j >= 1; --j)         for (int k = m; k >= a[i]; --k)           dp[j][k] += dp[j - 1][k - a[i]] * j / (ca - j + 1);   }   void Get_ans() {     for (int i = 1; i <= ca; ++i)       for (int j = 0; j <= m; ++j)         ans += dp[i][j] * min((1.0 * n / i + 1) * x, 1.0 * j / i);   }   void work() {     Get_dp();     Get_ans();   }   void outo() { printf( %.12lf n , ans); }   int main() {     into();     work();     outo();     return 0;   }   