hdoj-5645-DZY Loves Balls

Problem Description
DZY loves playing balls.

He has n balls in a big box. On each ball there is an integer written.

One day he decides to pick two balls from the box. First he randomly picks a ball from the box, and names it A . Next, without putting A back into the box, he randomly picks another ball from the box, and names it B .

If the number written on A is strictly greater than the number on B , he will feel happy.

Now you are given the numbers on each ball. Please calculate the probability that he feels happy.
 

Input
First line contains t denoting the number of testcases.

t testcases follow. In each testcase, first line contains n , second line contains n space-separated positive integers ai , denoting the numbers on the balls.

( 1t300,2n300,1ai300 )
 

Output
For each testcase, output a real number with 6 decimal places.
 

Sample Input
   
   
   
   
2 3 1 2 3 3 100 100 100
 

Sample Output
   
   
   
   
0.500000 0.000000

这是一道很水很水的概率题

嗯.....

高中的时候学过的

#include<cstdio>
#include<cstring>
#include<algorithm>
#include<iostream>
int main()
{
    int t;
    scanf("%d",&t);
    while(t--)
    {
        int n;
        int a[305];
        scanf("%d",&n);
        for(int i=0;i<n;i++) scanf("%d",&a[i]);
        int w=n*(n-1);
        int sum=0;
        for(int i=0;i<n;i++)
            for(int j=0;j<n;j++)
        {
            if(i!=j)
            if(a[i]>a[j]) sum++;
        }
        double ss=(double)sum/w;
        printf("%.6lf\n",ss);
    }
    return 0;
}


你可能感兴趣的:(hdoj-5645-DZY Loves Balls)