/*
根据题意,每天只能增加一个Bloodsucker,也就是说n-1个正常人是一个接着一个变成Bloodsucker的,
那么所有正常人变成Bloodsucker的天数期望等于所有正常人变成Bloodsucker的天数期望之和。
考虑n-1个正常人中第i个变成Bloodsucker的正常人的转变概率为:
P[i] = p*i*(n-i)/(n*(n-1)/2);
则 E[i]=1/p[i];
sum+=sigma(E[i]);
*/
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
int main(){
int t,i,j,n;
double p,sum;
scanf("%d",&t);
for(i=1;i<=t;i++){
sum=0;
scanf("%d %lf",&n,&p);
for(j=1;j<=n-1;j++){
sum+=(double)n*(n-1)/(2*p*j*(n-j));
}
printf("%.3lf\n",sum);
}
return 0;
}
zoj 3551 简单 概论dp
最新推荐文章于 2018-03-27 08:48:00 发布