#include <bits/stdc++.h> using namespace std; int n; double a[16][3]; double dp[__(1)__][16],ans; double dis(int x,int y) { return sqrt((a[x][1]-a[y][1])*(a[x][1]-a[y][1])+(a[x][2]-a[y][2])*(a[x][2]-a[y][2])); } int main() { cin>>n; for (int i=1; 1<=n; i++) cin>>a[i][1]>>a[i][2]; n++; memset (dp,127,sizeof (dp)) ; dp[1][0]=0; for (int s=0; s<=(1<<n)-1; s++) { for(int i=1; i<=n-1; i++) { if(__(2)__) continue; int x=__(4)__; for(int j=0; j<=n-1; j++) { if(__(3)__) continue; dp[s][i]=min(dp[s][i],dp[x][j]+dis(j,i)); } } } int x=__(5)__; ans=dp[x][1]; for (int i=2; i<n; i++) ans=min(dp[x][i],ans); printf("%.2lf",ans); return 0; }