#include <bits/stdc++.h>

using namespace std;

const int NMAX = 1e6+5;

int n;
double a[NMAX];

void read() {
   cin >> n;
   for (int i = 1, x; i <= n; i++) {
      cin >> x;
      a[i] = double(x) / 1e6;
   }
}

int solve() {
   double ans = 0, sum = 0, prod = 1;
   
   for (int l = 1, r = 1; l <= n; l++) {
      while (r <= n && sum * prod < (sum + (a[r] / (1.0 - a[r]))) * prod * (1.0 - a[r])) {
         sum += a[r] / (1.0 - a[r]);
         prod *= 1.0 - a[r];
         r++;
      }
      ans = max(ans, sum * prod);
      sum -= a[l] / (1.0 - a[l]);
      prod /= 1.0 - a[l];
   }

   return ans * 1e6;
}

signed main() {
#ifdef LOCAL
   freopen("input.txt", "r", stdin);
#else
   freopen("cowdate.in", "r", stdin);
   freopen("cowdate.out", "w", stdout);
#endif

   ios_base::sync_with_stdio(false);
   cin.tie(0);
   cout.tie(0);

   read();
   cout << solve();

   return 0;
}
