思路:易知结果为
∑(n-k)*C(n+k,k)*(p^(n+1)*q^k+q^(n+1)*p^k).
注意不能直接算,注意点技巧!!!看代码
代码如下:
#include<iostream>
#include<stdio.h>
#include<algorithm>
#include<iomanip>
#include<cmath>
using namespace std;
int main(){
int n,i,j=;
double p,q,ans1,ans2,m,c,pq,ans;
while(scanf("%d%lf",&n,&p)!=EOF){
q=-p;
pq=p*q;
ans1=n*p;ans2=n*q;c=;
for(i=;i<=n;i++){
c*=(n+i)*pq/i;
ans1+=c*(n-i);
ans2+=c*(n-i);
ans1*=p;
ans2*=q;
}
ans=ans1+ans2;
printf("Case %d: %.6lf\n",++j,ans);
}
return ;
}