例10-11 uva11181
来源:互联网 发布:hash算法特点 编辑:程序博客网 时间:2024/06/05 03:46
题意:n个人去逛超市,第i个人买东西的概率是pi,,计算每个人实际买了东西的概率
思路:
思路:
搜索标处理所以的情况,得出所有概率和all(开始天真的以为是1 - -,就说怎么案例看着怪怪的),用tt[i]记录i参与买东西的概率和,tt[i]/all就是i实际买的情况
#include <iostream>#include <cstdio>#include <cmath>#include <cstring>#include <cstdlib>#include <algorithm>typedef long long ll;using namespace std;int vis[25];int a,b;double p[25];double tt[25];double all;void fin(int n,int m){ if(m == b) { double tmp = 1.0; for(int i = 1; i <= a; i++) { if(vis[i])tmp *= p[i]; else tmp *= (1-p[i]); } all += tmp; for(int i = 1; i <= a; i++) { if(vis[i]) tt[i] += tmp; } return ; } else { for(int i = n+1;i <= a;i++) { vis[i] = 1; fin(i,m+1); vis[i] = 0; } } return ;}int main(){ int cas = 1; while(scanf("%d%d",&a,&b) != EOF && (a || b)) { all = 0; printf("Case %d:\n",cas++); memset(vis,0,sizeof(vis)); memset(tt,0,sizeof(tt)); for(int i =1;i <= a;i++) { scanf("%lf",p+i); } fin(0,0); for(int i = 1;i <= a;i++) { printf("%.6lf\n",tt[i]/all); } } return 0;}
0 0
- 例10-11 uva11181
- 紫书 例题 10-11 UVa11181
- UVa11181
- uva11181(概率)
- [UVA11181] Probability|Given && 概率
- Uva11181 Probability|Given
- uva11181 Probability|Given
- uva11181(概率)
- uva11181(概率)
- uva11181 条件概率
- uva11181(条件概率)
- uva11181 - Probability|Given(条件概率)
- uva11181 - Probability|Given 条件概率
- UVA11181 - Probability|Given(概率)
- UVa11181 Probability|Given DFS+概率
- 【条件概率】Probability|Given, UVa11181
- UVa11181 - Probability|Given(离散条件概率)
- UVa11181 条件概率(紫书327页)
- Multiplication Puzzle(区间DP:类似矩阵连乘问题的DP模板)
- 记:CVTE校招软件类笔试
- mysql出现Duplicate entry '0' for key 'PRIMARY'的错误
- POSIX 最大时间
- UVAlive 7037 - The Problem Needs 3D Arrays(网络流‘最大密度子图)
- 例10-11 uva11181
- jsp页面基础知识--如何导入js和css
- 请描述一下 cookies,sessionStorage 和 localStorage 的区别?
- 海量数据挖掘MMDS week3:社交网络之社区检测:高级技巧
- 优先级队列
- 使用CSS3制作简单的图形运动变换
- HTML 表单和输入
- Android 6.0新特性
- 大学C语言考点简析