#include #include #include #include #include #include #include #include #include #include #pragma GCC optimize("Ofast") using namespace std; typedef long long ll; const long long INF=200000000000000; double pi=3.141592653589793; const int MOD = 1000000007; long long gcd(long long a,long long b){ if(ap(3002); vector>memo(3002,vector(3002,-1)); double f(double i,double j){ if(memo[i][j]!=-1)return memo[i][j]; if(i==0){ if(j==0)return 1; else return 0; } return memo[i][j]=(1-p[i-1])*f(i-1,j)+p[i-1]*f(i-1,j-1); } int main(){ ios::sync_with_stdio(false); cin.tie(nullptr); ll N; cin>>N; vectorA(N); ll ans=0; for(int i=0;i>A[i]; A.push_back(-1); for(int i=0;i