//Problem *
#include<bits/stdc++.h>
using namespace std;
const int N=305;
int n,a,b,c;
double dp[N][N][N];
int main(){
	scanf("%d",&n);
	for(int i=1;i<=n;i++){
		int _;scanf("%d",&_);
		if(_==1)++a;if(_==2)++b;if(_==3)++c;
	}
	for(int k=0;k<=n;k++)for(int j=0;j<=n;j++)for(int i=0;i<=n;i++)if(0<i+j+k&&i+j+k<=n){
		if(i)dp[i][j][k]+=dp[i-1][j  ][k  ]*i;
		if(j)dp[i][j][k]+=dp[i+1][j-1][k  ]*j;
		if(k)dp[i][j][k]+=dp[i  ][j+1][k-1]*k;
		dp[i][j][k]=(n+dp[i][j][k])/(i+j+k);
	}
	printf("%.12lf",dp[a][b][c]);
	return 0;
}