uva-11021-全概率公式
2018-05-01 17:51
351 查看
https://vjudge.net/problem/UVA-11021
有n个球,每只的存活期都是1天,他死之后有pi的概率产生i个球(0<=i<n),一开始有k个球,问m天之后所有球都死完的概率(m天之前都死完也算m天之前的)。由于每个球的成长与死亡都是独立的所以我们可以分开讨论,设f(i)表示初始1个球的情况下i天死光的概率,那么答案就是pow(f(m),k)。现在只要求出f(m)即可,利用全概率公式 f(i)=P(0)+P(1)*f(i-1)+P(2)*f(i-1)2+...+P(n-1)*f(i-1)n-1.
#include<iostream> #include<cstring> #include<queue> #include<cstdio> #include<stack> #include<set> #include<map> #include<cmath> #include<ctime> #include<time.h> #include<algorithm> using namespace std; #define mp make_pair #define pb push_back #define debug puts("debug") #define LL long long #define pii pair<int,int> #define eps 1e-12 double P[1010]; double f[1010]; int main() { int n,m,i,j,k,t; int cas=0; cin>>t; while(t--){ scanf("%d%d%d",&n,&k,&m); for(i=0;i<n;++i) scanf("%lf",P+i); f[1]=P[0]; for(i=2;i<=m;++i){ f[i]=0; for(j=0;j<n;j++){ f[i]+=P[j]*pow(f[i-1],j); } } printf("Case #%d: %.7f\n",++cas,pow(f[m],k)); } return 0; }
相关文章推荐
- UVA 11021 全概率公式+递推的使用
- UVA 11021 - Tribles
- UVA_11021 Tribles(递推)
- UVa 1637 纸牌游戏(全概率公式)
- UVa 11021 Tribbles(概率递推)
- uva-11021
- UVA 11021 - Tribles
- UVA 11468 Substring [AC自动机] [全概率公式]
- UVA 11021 - Tribles(概率)
- 《算法竞赛-训练指南》第二章-2.14_UVa 11021
- UVa 11021 - Tribles (概率DP)
- uva 11021
- UVa 11021 - Tribles
- UVA - 11021 Tribles (递推+概率)
- uva 11021 Tribbles
- uva 11021 数学概率 麻球
- UVA 11021 - Tribles (数学概率)
- UVA 11021 C - Tribles(概率DP)
- UVA 11021 Tribbles [数学概率]
- 白书例题 uva 11021 Tribles