#include <iostream>
#include <cmath>
using namespace std;
int main ()
{
double aa[16][3];
for (int i=0;i<16;i++)
{
cin>>aa[i][0]>>aa[i][1]>>aa[i][2];
}
double a,b,c;
while ((cin >>a>>b>>c)&&(a!=-1&&b!=-1&&c!=-1))
{
int sub=0;
double Dmax=sqrt((a-aa[0][0])*(a-aa[0][0])+(b-aa[0][1])*(b-aa[0][1])+(c-aa[0][2])*(c-aa[0][2]));
for (int j=1;j<16;j++)
{
double D=sqrt((a-aa[j][0])*(a-aa[j][0])+(b-aa[j][1])*(b-aa[j][1])+(c-aa[j][2])*(c-aa[j][2]));
if (Dmax>D)
{
Dmax=D;
sub=j;
}
}
cout<<"("<<a<<","<<b<<","<<c<<")"<<" maps to "<<"("<<aa[sub][0]<<","<<aa[sub][1]<<","<<aa[sub][2]<<")"<<endl;
}
return 0;
}
由于初始时数组越界所以导致内存错误,经修改后次程序能够正常运行,运行时间为0MS,看来做题时细心很重要啊!