import sys from functools import lru_cache def main(): n = int(sys.stdin.readline()) a = list(map(int, sys.stdin.readline().split())) m3_initial = 0 m2_initial = 0 m1_initial = 0 for ai in a: c = max(3 - ai, 0) if c == 3: m3_initial += 1 elif c == 2: m2_initial += 1 elif c == 1: m1_initial += 1 @lru_cache(maxsize=None) def e(m3, m2, m1): sum_m = m3 + m2 + m1 if sum_m == 0: return 0.0 denominator = sum_m / n res = 0.0 if m3 > 0: res += (m3 / n) * e(m3 - 1, m2 + 1, m1) if m2 > 0: res += (m2 / n) * e(m3, m2 - 1, m1 + 1) if m1 > 0: res += (m1 / n) * e(m3, m2, m1 - 1) res = (1 + res) / denominator return res result = e(m3_initial, m2_initial, m1_initial) print("{0:.10f}".format(result)) if __name__ == "__main__": main()