zzuli1728(数学期望,组合数)
1728: 社交网络
Time Limit: 2 Sec Memory Limit: 128 MBSubmit: 232 Solved: 64
SubmitStatusWeb Board
Description
Input
Output
Sample Input
Sample Output
#include<iostream>
#include<cmath>
#include<cstring>
#include<cstdio>
#define CIN(a) scanf("%d",&a)
using namespace std;
int G[35];
long long C[32][32];
void init()
{
int i,j;
for(i=1;i<=31;++i) C[i][0]=1,C[i][1]=1,C[i][i]=1;
for(i=1;i<=31;++i)
for(j=1;j<=i;++j)
C[i][j]=C[i][j-1]*(i-j+1)/j;
}
double POW(double a,int b)
{
double s=1.00;
for(int i=1;i<=b;++i) s=s*a;
return s;
}
int main()
{init();
int t,i,j,n,k;
CIN(t);
while(t--){int b;memset(G,0,sizeof(G));
double P=0,E=0;
CIN(n),CIN(k);
for(i=1;i<=n;++i)
for(j=1;j<=n;++j) {CIN(b);
if(b==1) G[i]++;
}
for(i=1;i<=n;++i)
for(j=k;j<=G[i];++j){
E+=0.5*(C[G[i]][j]*POW(0.5,G[i])); //n个人中有j个人是男的时第i号人是交际花的概率(由于只是一个人,此值也表示期望)
}
printf("%.3f\n",E);
}
return 0;
}