UVa 11181 条件概率

题意:n个人选r个人,每个人被选中的概率为pi,问最后每个人被选中的概率是多少。

sol:就是个简单的概率题,范围还特别小,深搜秒出...然而公式什么的很多还是需要注意的...
    条件概率的公式:P(A|B)*P(B)=P(AB) ——>这题就成了求裸的P(ai|pr),即在pr发生的情况下ai发生的概率。因为P(AB)和P(B)通过搜索可以很方便地求出来,那么P(a|b)也就迎刃而解了。

    所以在枚举的时候即使一个点没有被选中,那么它没有被选中的概率仍然应该乘上去,最后求的是所有概率,即累加和去除所有情况概率和:(统计时的处理

if(count == r){  
        double tem = 1;  
        for(int i = 1;i <= n;i++){  
            if(vis[i])  tem *= p[i];  
            else        tem *= (1-p[i]);  
        }  
        ans[0] += tem;  
        for(int i = 1;i <= n;i++)  
            if(vis[i])  
                ans[i] += tem;  
    }



 

posted @ 2016-02-03 15:44  YCuangWhen  阅读(257)  评论(0编辑  收藏  举报