#include<stdio.h>
#include<cmath>
struct god {
int x,y,z;
} a[50005];
void kp(int low,int hg) {
int i=low,j=hg;
if(i<j) {
int x=a[low].z,y=a[low].y,z=a[low].x;
while (i<j) {
while(i<j&&a[j].z>a[low].z)
j--;
if(j>i)
{
a[i++].z=a[j].z;
a[i-1].y=a[j].y;
a[i-1].x=a[j].x;
}
while(i<j&&a[i].z<a[low].z)
i++;
if(j>i)
{
a[j--].z=a[i].z;
a[j-1].y=a[i].y;
a[j-1].x=a[i].x;
}
}
a[i].z=x;
a[i].y=y;
a[i].x=z;
kp(low,i-1);
kp(i+1,hg);
}
}
int main() {
int n,xt,yt,zt;
scanf("%d",&n);
int i;
for(i=1; i<=n; i++)
scanf("%d%d%d",&a[i].x,&a[i].y,&a[i].z);
kp(1,n);
double h=0;
for(i=2;i<=n;i++)
{
h+=sqrt((a[i].z*1.0-a[i-1].z*1.0)*(a[i].z*1.0-a[i-1].z*1.0)+(a[i].x*1.0-a[i-1].x*1.0)*(a[i].x*1.0-a[i-1].x*1.0)+(a[i].y*1.0-a[i-1].y*1.0)*(a[i].y*1.0-a[i-1].y*1.0));
}
printf("%.3f",h);
return 0;
}