func_code_string: #include <bits/stdc++.h>   using namespace std;   int n;   double p[1000];   const int cc = 2;   double a[201][cc * 101][cc * 101];   double get(int IT) {     for (int it = 0; it <= IT; it++)       for (int i = 0; i <= cc * n; i++)         for (int j = 0; j <= cc * n; j++) a[it][i][j] = -100;     for (int i = 0; i <= cc * n; i++)       for (int j = 0; j <= min(n, i); j++)         a[0][i][min(cc * n, i - j + n - j)] =             max(a[0][i][min(cc * n, i - j + n - j)], p[j]);     for (int it = 1; it <= IT; it++) {       for (int i = 0; i <= cc * n; i++)         for (int j = 0; j <= cc * n; j++)           for (int k = 0; k <= cc * n; k++)             a[it][i][k] =                 max(a[it][i][k], (a[it - 1][i][j] + a[it - 1][j][k]) / 2);     }     double ans = 0;     for (int i = 0; i <= cc * n; i++) ans = max(ans, a[IT][0][i]);     return ans;   }   int main() {     cin >> n;     for (int i = 0; i <= n; i++) {       cin >> p[i];     }     printf( %.18lf n , (double)get(30));     return 0;   }   