public class Euler761 {
    static double clamp(double x, double lo, double hi) {
        if (x < lo)
            return lo;
        if (x > hi)
            return hi;
        return x;
    }

    static double lambdaRegular(int n) {
        double theta = Math.PI / n;
        double tanTheta = Math.tan(theta);

        int K = -1;
        for (int k = 0; k <= n; ++k) {
            double ktheta = k * theta;
            double val = Math.sin(ktheta) - (k + n) * tanTheta * Math.cos(ktheta);
            if (val < 0.0) {
                K = k;
            } else {
                break;
            }
        }
        if (K < 0)
            K = 0;

        double ktheta = K * theta;
        double denom = (K + n) * tanTheta;
        double arg = 2.0 * Math.sin(ktheta) / denom - Math.cos(ktheta);
        arg = clamp(arg, -1.0, 1.0);

        double alpha = 0.5 * (ktheta + Math.acos(arg));
        return 1.0 / Math.cos(alpha);
    }

    public static String solve() {
        double hexagon = lambdaRegular(6);
        return String.format(java.util.Locale.US, "%.8f", hexagon);
    }

    public static void main(String[] args) {
        System.out.println(solve());
    }
}
