emmm水题)...
#include <bits/stdc++.h>
using namespace std;
const int N=13;
struct ANS{
double a,b,c;
}f[N];
int n=12;
double ans[N];
void dfs(int u,int num,double res)//做了几个,做对几个,的概率.
{
if(u==13) {ans[num]+=res;return;}
dfs(u+1,num+1,res*(1-(1-f[u].a)*(1-f[u].b)*(1-f[u].c)));
dfs(u+1,num,res*(1-f[u].a)*(1-f[u].b)*(1-f[u].c));
}
int main()
{
for(int i=1;i<=n;i++) scanf("%lf",&f[i].a);
for(int i=1;i<=n;i++) scanf("%lf",&f[i].b);
for(int i=1;i<=n;i++) scanf("%lf",&f[i].c);
dfs(1,0,1);for(int i=0;i<=12;i++) printf("%.6f\n",ans[i]);
return 0;
}
京公网安备 11010502036488号