import java.util.Scanner; public class taking_balls { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int ones = 0, twos = 0, threes = 0; for (int i = 0; i < N; i++) { int x = sc.nextInt(); if (x == 1) ones++; else if (x == 2) twos++; else if (x == 3) threes++; } double[][][] dp = new double[N + 1][N + 1][N + 1]; for (int i = 0; i <= N; i++) { for (int j = 0; j <= N; j++) { for (int k = 0; k <= N; k++) { dp[i][j][k] = 0.0; } } } for (int k = 0; k <= N; k++) { for (int j = 0; j <= N; j++) { for (int i = 0; i <= N; i++) { if (i + j + k > N || i + j + k == 0) continue; if (i > 0) dp[i][j][k] += i * dp[i - 1][j][k] / (i + j + k); if (j > 0) dp[i][j][k] += j * dp[i + 1][j - 1][k] / (i + j + k); if (k > 0) dp[i][j][k] += k * dp[i][j + 1][k - 1] / (i + j + k); dp[i][j][k] += (double) N / (i + j + k); } } } System.out.printf("%.12f\n", dp[ones][twos][threes]); } }