分析:
就是一个关系运算。。。。
相同关系 = 都是朋友 + 都不是朋友
a表示当前某人有a个朋友,则此人有n-1-a个人不是朋友(其中1为他本身)。
所以不符合相同关系的人数为 sum ( 1 * a * ( n - 1 -a ) ) / 2,即选择自己,自己的一个朋友和一个不是自己的朋友。。
最后的除2 是因为会出现重复。。。
最后总情况减去不符合的,就是所要求的。。。
2013-04-27
#include"stdio.h"
#include"string.h"
int main()
{
int T;
int n,i;
int a;
int sum;
scanf("%d",&T);
while(T--)
{
scanf("%d",&n);
sum=0;
for(i=0;i<n;i++)
{
scanf("%d",&a);
sum+=1*a*(n-1-a);
}
sum/=2;
printf("%.3f\n",1-sum*1.0/(n*(n-1)*(n-2)/6));
}
return 0;
}