UVA 11181 Possibility Given】的更多相关文章

#include<bits/stdc++.h> #include<stdio.h> #include<iostream> #include<cmath> #include<math.h> #include<queue> #include<set> #include<map> #include<iomanip> #include<algorithm> #include<stack&g…
Uva 11181 Probability|Given Problem's Link:   http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=18546 Mean: n个人去逛超市,第i个人会购买东西的概率是Pi.出超市以后发现有r个人买了东西,问你每个人购买东西的实际概率是多少. analyse: 转换模型: 有n个员工,每个员工被选出来的概率是Pi.最后选出了r个,问你第i个员工在这r个中的概率是多少. 设: 事件A---…
题目链接:uva 11181 - Probability|Given 题目大意:有n个人去超市买东西,给出r,每个人买东西的概率是p[i],当有r个人买东西的时候,第i个人恰好买东西的概率. 解题思路:dfs思路很简单,主要注意说ans[i] / P, (P为n个人中买东西的人数为r的事件发生的概率). #include <stdio.h> #include <string.h> const int N = 30; int n; double p[N], ans[N]; doubl…
UVA - 11181 题意: n个人去买东西,其中第i个人买东西的概率是p[i],最后只有r个人买了东西,求每个人实际买了东西的概率 代码: //在r个人买东西的概率下每个人买了东西的概率,这是条件概率,因为最多20个人可以枚举所有的状态 //然后找到所有的r个人买东西的状态,算出总的概率,某个人在此条件下的概率就是这个人参与了的状态 //的概率和除以总概率. #include<iostream> #include<cstdio> #include<cstring>…
链接: https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=2122 题意: 有n个人准备去超市逛,其中第i个人买东西的概率是Pi.逛完以后你得知有r个人买了东西.根据这一信息,请计算每个人实际买了东西的概率.输入n(1≤n≤20)和r(0≤r≤n),输出每个人实际买了东西的概率. 分析: 设“r个人买了东西”这个事件为E,“第i个人买东西”这…
题意:n个人选r个人,每个人被选中的概率为pi,问最后每个人被选中的概率是多少. sol:就是个简单的概率题,范围还特别小,深搜秒出...然而公式什么的很多还是需要注意的...     条件概率的公式:P(A|B)*P(B)=P(AB) ——>这题就成了求裸的P(ai|pr),即在pr发生的情况下ai发生的概率.因为P(AB)和P(B)通过搜索可以很方便地求出来,那么P(a|b)也就迎刃而解了. 所以在枚举的时候即使一个点没有被选中,那么它没有被选中的概率仍然应该乘上去,最后求的是所有概率,即累…
N friends go to the local super market together. The probability of their buying something from themarket is p1, p2, p3, . . . , pN respectively. After their marketing is finished you are given the informationthat exactly r of them has bought somethin…
直接枚举计算就行: #include<cstdio> #include<cstring> #include<algorithm> #define maxn 22 using namespace std; double ans[maxn],p[maxn]; bool vis[maxn]; int n,r; void dfs(int cur,int cot) { if(cur>n) { if(cot==r) { ; ; i<=n; i++) { if(vis[i…
题意: 有n个人买东西,第i个人买东西的概率为Pi.已知最终有r个人买了东西,求每个人买东西的概率. 分析: 设事件E为r个人买了东西,事件Ei为第i个人买了东西.所求为P(Ei|E) = P(EiE) / P(E) 用一个buy数组记录每个人买或没买东西,然后dfs. 枚举所有r个人买了东西的情况的概率prob,累加到sum[n]中,对于buy[i] == true,再将prob加到sum[i]中. 最后答案为sum[i] / sum[n] #include <cstdio> #includ…
条件概率公式:P( A|B ) = P( AB ) / P( B ) 表示在事件B发生的前提,事件A发生的可能性: 问题的: 复位事件E:r个人买东西: 事件Ei:文章i个人买东西: 的要求是P( Ei | E ); 计算P( E ) 用全概率公式就可以.採用递归枚举出全部r个人买东西的情况,然后计算出其总的概率: 计算P( Ei ) 就是在上面递归枚举的过程中将选上第i个人的情况的概率加起来:(在这样的情况下,其概率就是:在E发生的前提下的概率) 代码: #include<cstdio> #…