#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<iostream>
#include<algorithm>
#include<cmath>
using namespace std;
struct poi
{
double x;double y;double z;
} point[5010];
int minn[5010]={0};
int dis(struct poi a,struct poi b)
{
double di=sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y)+(a.z-b.z)*(a.z-b.z));
return (int)di;
}
int main()
{
int x,y,z;
int i=0,j,k;
while(1)
{
cin>>point[i].x>>point[i].y>>point[i].z;
if((point[i].x==0)&&(point[i].y==0)&&(point[i].z==0)) break;
i++;
}
int m=0;int tem;
for(j=0;j<i;j++)
{
int mi=100000000;
for(k=0;k<i;k++)
{
if(k!=j)
{
tem=dis(point[j],point[k]);
if(tem<mi)
{
mi=tem;
}
}
}
minn[mi]++;
}
for(j=0;j<10;j++)
printf("%4d",minn[j]);
printf("\n");
return 0;
}
easy。