题目:http://acm.hdu.edu.cn/showproblem.php?pid=4503
概率题。可以这样想,其三个小朋友完全属性相同或者完全属性不同不好求。我们可以容易求得他们其中只有两个人是朋友的种类数,注意最后除以2.然后概率相减就行了。
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <algorithm>
#include <stack>
#include <queue>
#include <map>
#include <string>
using namespace std;
int fri[1005];
int main()
{
#ifndef ONLINE_JUDGE
freopen("in.txt","r",stdin);
#endif
int t;
int n;
scanf(" %d",&t);
while(t--)
{
scanf(" %d",&n);
for(int i=0;i<n;i++)
{
scanf(" %d",&fri[i]);
}
int total = n*(n-1)*(n-2)/6;
int dif = 0;
for(int i=0;i<n;i++)
{
dif += fri[i] * (n-fri[i]-1);
}
dif /=2;
printf("%.3lf\n",(double)(total-dif)/total);
}
return 0;
}