import java.util.*

fun main(args: Array<String>) {
    val sc = Scanner(System.`in`)
    val n = sc.nextInt()
    val xy = (0 until n).map { sc.next().toDouble() to sc.next().toDouble() }
    val ml : MutableList<Int> = mutableListOf()
    val p = permutation((0..n-1).toList(),ml)
    //println(xy)
    //println(p)
    
    var fact = 1
    var distsum = 0.0
    for(i in 2 until n+1) fact *= i
    p.forEach {
        for (j in 1 until n) {
            val dx = Math.pow(xy[it[j]].first - xy[it[j-1]].first,2.0)
            val dy = Math.pow(xy[it[j]].second - xy[it[j-1]].second,2.0)
            distsum += Math.sqrt(dx + dy)
        }
    }
    println(distsum / fact)
}

fun permutation(q:List<Int>,ans: MutableList<Int>) : MutableList<MutableList<Int>> {
    // Base Case
    val ret :MutableList<MutableList<Int>> = mutableListOf()
    if(q.size <= 1) {
        ans.add(q[0])
        ret.add(ans)
        //println(ans)
    }
    // General Case
    else {
        for (i in 0 until q.size ) {
            //print(i)
            //print(q)
            //println(ans)
            val n = ans.toMutableList()
            n.add(q[i])
            //println(n)
            ret.addAll(permutation(q.subList(0,i).plus(q.subList(i+1,q.size)),n))
        }
    }
    return ret
}