from itertools import permutations

def dist(x,y):

    return ((x[0]-y[0])**2+(x[1]-y[1])**2)**0.5

N = int(eval(input()))

X = [list(map(int,input().split())) for _ in range(N)]

tot = 0

cnt = 0

for z in permutations(list(range(N))):

    cnt += 1

    for i in range(1,N):

        tot += dist(X[z[i]],X[z[i-1]])

print((tot/cnt))
from itertools import permutations

def dist(x,y):

    return ((x[0]-y[0])**2+(x[1]-y[1])**2)**0.5

N = int(eval(input()))

X = [list(map(int,input().split())) for _ in range(N)]

cnt = 0

for z in permutations(list(range(N)),N):

    for i in range(1,N):

        cnt += dist(X[z[i]],X[z[i-1]])

k = 1

for i in range(2,N+1):

    k = k*i

print((cnt/k))
from itertools import permutations


def dist(x, y):
    return ((x[0] - y[0]) ** 2 + (x[1] - y[1]) ** 2) ** 0.5


N = int(eval(input()))
X = [list(map(int, input().split())) for _ in range(N)]
tot = 0
cnt = 0
for z in permutations(list(range(N))):
    cnt += 1
    for i in range(1, N):
        tot += dist(X[z[i]], X[z[i - 1]])
print((tot / cnt))

from itertools import permutations


def dist(x, y):
    return ((x[0] - y[0]) ** 2 + (x[1] - y[1]) ** 2) ** 0.5


N = int(eval(input()))
X = [list(map(int, input().split())) for _ in range(N)]
cnt = 0
for z in permutations(list(range(N)), N):
    for i in range(1, N):
        cnt += dist(X[z[i]], X[z[i - 1]])
k = 1
for i in range(2, N + 1):
    k = k * i
print((cnt / k))

-tot = 0 -for z in permutations(list(range(N))): -    cnt += 1 +for z in permutations(list(range(N)), N): -        tot += dist(X[z[i]], X[z[i - 1]]) -print((tot / cnt)) +        cnt += dist(X[z[i]], X[z[i - 1]]) +k = 1 +for i in range(2, N + 1): +    k = k * i +print((cnt / k))