import java.io.*;
import java.lang.reflect.Array;
import java.util.*;

public class Codeforces {

    PrintWriter out = new PrintWriter(System.out);
    public  void solve() {
        FastScanner fs = new FastScanner();
        int n = fs.nextInt();
        int[]ar = new int[n];
        for(int i=0;i<n;i++){
            ar[i] = fs.nextInt();
        }
        Arrays.sort(ar);
        double[]hash = new double[5001];
        for(int i=n-1;i>=0;i--){
            for(int j=i-1;j>=0;j--){
                hash[ar[i]-ar[j]] += 2.0/(double)(n*(n-1));
            }
        }
//        out.println(Arrays.toString(hash));
        double[]hash2 = new double[10001];
        for(int i=1;i<5001;i++){
            for(int j=1;j<5001;j++){
                hash2[i+j] += hash[i]*hash[j];
            }
        }
//        out.println(Arrays.toString(hash2));
        double ans = 0;
        for(int i=5000;i>=3;i--){
            for(int j=i-1;j>=2;j--){
                ans += hash[i]*hash2[j];
            }
        }
        out.println(ans);
        out.flush();


    }
    public static void main(String[]args){
        try{
            new Codeforces().solve();
        }catch (Exception e){
            e.printStackTrace();
        }

    }
    static class FastScanner {
        BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st=new StringTokenizer("");
        String next() {
            while (!st.hasMoreTokens())
                try {
                    st=new StringTokenizer(br.readLine());
                } catch (IOException e) {
                    e.printStackTrace();
                }
            return st.nextToken();
        }
        String nextLine()
        {
            String str = "";
            try
            {
                str = br.readLine();
            }
            catch (IOException e)
            {
                e.printStackTrace();
            }
            return str;
        }

        int nextInt() {
            return Integer.parseInt(next());
        }
        long nextLong() {
            return Long.parseLong(next());
        }
    }
}