UVA 11427 Expect the Expected(DP+概率)

时间:2023-03-08 16:25:55

链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=35396

【思路】

  DP+概率

  见白书。

【代码】

 #include<cstdio>
#include<cstring>
using namespace std; const int N = +; int n,a,b;
double f[N][N]; int main() {
int T,kase=;
scanf("%d",&T);
while(T--) {
scanf("%d/%d%d",&a,&b,&n);
double p=(double)a/b;
memset(f,,sizeof(f));
f[][]=;
for(int i=;i<=n;i++)
for(int j=;j*b<=a*i;j++) {
f[i][j]=f[i-][j]*(-p);
if(j) f[i][j] += f[i-][j-]*p;
}
double Q=;
for(int j=;j*b<=a*n;j++) Q += f[n][j];
printf("Case #%d: %d\n",++kase,(int)(/Q));
}
return ;
}