#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef double db;
#define pb push_back
#define fr(i,n) for(int i=0;i<n;i++)
#define Fr(i,n) for(int i=0;i++<n;)
#define ifr(i,n) for(int i=n-1;i>=0;i--)
#define iFr(i,n) for(int i=n;i>0;i--)

db dp[310][310][310]={};
bool f[310][310][310]={};
int n,a,c[3]={};

db p(int i,int j,int k){
  if(i<0||j<0||k<0) return 0;
  if(!f[i][j][k]){
    f[i][j][k]=1;
    dp[i][j][k]=(i*p(i-1,j,k)+j*p(i+1,j-1,k)+k*p(i,j+1,k-1)+n)/(i+j+k);
  }
  return dp[i][j][k];
}

int main(){
  cin>>n;fr(i,n){cin>>a;c[--a]++;}
  f[0][0][0]=1;
  printf("%.12f\n",p(c[0],c[1],c[2]));
}