如何在一条直线上的某些点的位置,求出一点到这些点的距离最短!

我的点在这条直线上的位置是42,43,55,60,67,72,要求找出一点36~80之间的点,到那些点的距离最短?能否提供一种算法!
在matlab上运行,提示程序错误啊!

第1个回答  2009-09-07
应该是到这些点的距离之和最小吧?

int min=INT_MAX;
int min_x;
int temp;
for(int x=36;x<=80;x++)
{
temp=abs(x-42)+abs(x-43)+abs(x-55)+abs(x-60)+abs(x-67)+abs(x-72);
if(temp<min)
{
min=temp;
minx=x;
}
}本回答被提问者采纳