import java.math.BigDecimal;
import java.math.MathContext;
import java.math.RoundingMode;
import java.math.BigInteger;

public class Euler964 {

    static long chooseU64(int n, int r) {
        if (r < 0 || r > n)
            return 0;
        r = Math.min(r, n - r);
        long x = 1;
        for (int i = 1; i <= r; ++i) {
            x = (x * (n - r + i)) / i;
        }
        return x;
    }

    static BigDecimal factorialDec(int n) {
        BigInteger f = BigInteger.ONE;
        for (int i = 2; i <= n; ++i) {
            f = f.multiply(BigInteger.valueOf(i));
        }
        return new BigDecimal(f);
    }

    static BigDecimal probability(int k) {
        int n = k * (k - 1) / 2 + 1;
        MathContext mc = new MathContext(100, RoundingMode.HALF_UP);
        BigDecimal sum = BigDecimal.ZERO;

        for (int r = 0; r < n; ++r) {
            BigDecimal dim = new BigDecimal(chooseU64(n - 1, r));
            if (dim.compareTo(BigDecimal.ZERO) == 0) {
                continue;
            }
            BigDecimal prod = BigDecimal.ONE;
            for (int i = 1; i <= k; ++i) {
                BigDecimal termPart = new BigDecimal(chooseU64(n - i, r))
                        .divide(dim, mc);
                prod = prod.multiply(termPart, mc);
            }
            BigDecimal term = dim.multiply(prod, mc);
            if ((r & 1) != 0) {
                term = term.negate();
            }
            sum = sum.add(term, mc);
        }

        return sum.divide(factorialDec(n), mc);
    }

    static boolean closeTo(BigDecimal a, BigDecimal b, BigDecimal eps) {
        BigDecimal d = a.subtract(b).abs();
        return d.compareTo(eps) <= 0;
    }

    public static String solve() {
        return probability(7).setScale(10, RoundingMode.HALF_UP)
                .stripTrailingZeros()
                .toEngineeringString()
                .replace("E", "e");
    }

    public static void main(String[] args) {
        BigDecimal eps = new BigDecimal("1e-40");
        if (!closeTo(probability(2), new BigDecimal("5e-1"), eps)) {
            System.out.println("Validation failed");
            return;
        }
        if (!closeTo(probability(3), new BigDecimal("1.38888888888888888888888888888888888889e-2"), eps)) {
            System.out.println("Validation failed");
            return;
        }

        BigDecimal ans = probability(7);
        System.out.println(String.format(java.util.Locale.US, "%.10e", ans));
    }
}
