题目:设平面上两个点的坐标分别为(x1, y1) (x2, y2) ,其中 x1, y1, x2, y2为整数。
则曼哈顿距离 Manhattan Distance 的定义为: |x1 - x2 | + | y1 -y2|。
#include<stdio.h>
int ManhattanDistance( int x1, int y1, int x2, int y2)
{
if(x1>=x2)
{
if(y1>=y2)
{
return (x1-x2+y1-y2);
}
else
{
return (x1-x2+y2-y1);
}
}
else
{
if(y1>=y2)
{
return (x2-x1+y1-y2);
}
else
{
return (x2-x1+y2-y1);
}
}
}
int main()
{
int ret=ManhattanDistance( -1, -1, -2,-2);
printf("%d\n",ret);
return 0;
}

该博客介绍了一种用C语言计算两点间曼哈顿距离的函数`ManhattanDistance`。函数通过比较坐标值并根据条件计算绝对差值来实现。在示例中,函数被用于计算(-1,-1)和(-2,-2)两点间的曼哈顿距离,输出结果为2。
1591

被折叠的 条评论
为什么被折叠?



