曼哈顿距离与切比雪夫距离的转换

曼哈顿距离与切比雪夫距离的转换

曼哈顿距离

定义

平面内两点坐标分别为(x1,y1),(x2,y2)

$$
dis = |x_1 - x_2| + |y_1 - y_2|
$$

切比雪夫距离

定义

平面内两点坐标分别为(x1,y1),(x2,y2)

$$
dis = \max(|x1 - x2|, |y1 - y2|)
$$

两者的关系

第一组

将一个点 ((x, y)) 的坐标变为 ((x + y, x - y)) 后,原坐标系中的曼哈顿距离 (=) 新坐标系中的切比雪夫距离 。

当然有时候为了防止数组越界,在处理 x - y 的时候,可以全部加上一个定值常数,即转换为 ((x + y, x - y + C))

第二组

将一个点 ((x, y)) 的坐标变为

$$
\left( \frac{x+y}{2},\ \frac{x-y}{2} \right)
$$

后,原坐标系中的切比雪夫距离 (=) 新坐标系中的曼哈顿距离

1. 第一组变换证明

设原两点 ( A(x_1,y_1) )、( B(x_2,y_2) ),变换后新坐标:

$$ A’(x_1+y_1,\ x_1-y_1),\quad B’(x_2+y_2,\ x_2-y_2) $$

  • 原曼哈顿距离:

    • $$ d_{\text{Manhattan}} = |x_1-x_2| + |y_1-y_2| $$
  • 新切比雪夫距离:

    • $$ d_{\text{Chebyshev}}’ = \max\left(,|(x_1+y_1)-(x_2+y_2)|,,\ |(x_1-y_1)-(x_2-y_2)|,\right) $$
  • 化简后可证

$$
( d_{\text{Manhattan}} = d_{\text{Chebyshev}}’ )
$$

2. 第二组变换证明

变换后新坐标: $$ A’\left(\frac{x_1+y_1}{2},\ \frac{x_1-y_1}{2}\right),\quad B’\left(\frac{x_2+y_2}{2},\ \frac{x_2-y_2}{2}\right) $$

  • 原切比雪夫距离:

    • $$ d_{\text{Chebyshev}} = \max\left(,|x_1-x_2|,\ |y_1-y_2|,\right) $$
  • 新曼哈顿距离:

    • $$ d_{\text{Manhattan}}’ = \left|\frac{x_1+y_1}{2} - \frac{x_2+y_2}{2}\right| + \left|\frac{x_1-y_1}{2} - \frac{x_2-y_2}{2}\right| $$
  • 化简后可证
    $$
    ( d_{\text{Chebyshev}} = d_{\text{Manhattan}}’ )
    $$

应用意义

这些变换可将两种距离问题相互转换,利用不同距离在算法中的优势(如曼哈顿距离计算简单、切比雪夫距离在网格问题中直观 ),简化解题。

例题 ( C-总辖之愿_金山杯 2025 年武汉理工大学程序设计竞赛 )