#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;
}