#include <bits/stdc++.h>
using namespace std;
int avl[5001] = {0};
int n;
int a[2000];
long double dp[4][20101];
bool vst[4][20100] = {0};
int all;
long double f(int t, int cur) {
  if (vst[t][cur]) return dp[t][cur];
  long double res = 0;
  if (t == 1 || t == 2) {
    for (int i = 0; i <= 10; i++) {
      if (avl[i]) {
        res += (avl[i] / (double)all) * f(t + 1, cur - i);
      }
    }
  } else {
    for (int i = 0; i <= 10; i++) {
      if (avl[i] && i + cur - 10010 > 0) {
        res += (avl[i] / (double)all);
      }
    }
  }
  vst[t][cur] = 1;
  return dp[t][cur] = res;
}
int main() {
  cin >> n;
  all = (n * (n - 1)) / 2;
  for (int i = 0; i < n; i++) scanf("%d", &a[i]);
  for (int i = 0; i < n; i++) {
    for (int j = i + 1; j < n; j++) {
      avl[abs(a[i] - a[j])]++;
    }
  }
  double res = f(1, 10010);
  printf("%.6f\n", res);
}
