切比雪夫距離是什麼呢? 假設有兩個點,a(x,y),b(m,n) 那麼這兩個點的切比雪夫距離就是max(|x-m|,|y-n|)
然而它有什麼卵用嗎?我也不知道
然而它可以轉化為曼哈頓距離,這就非常6了.用了乙個非常神奇的思想.
我們把座標系順時針旋轉45°,這個點到原點的距離是固定的,然後我們用和角公式,這個點的座標即為(sin45°*(x-y),sin45°*(x+y)).然後我們乘上sqrt(2);然後兩個點的切比雪夫距離就是這種情形下的曼哈頓距離除以2.(中間有個非常麻煩的分類討論...就不寫了,完全版可以看這裡:
那麼我們就可以亂搞了!
切比雪夫距離
若點 a x 1,y 1 b x 2,y 2 則兩點間的曼哈頓距離為 x 1 x 2 y 1 y 2 已知 n 個點求兩兩之間的曼哈頓距離之和,易得 x 的貢獻與 y 的貢獻是分開的 可以用兩次排序去絕對值 字首和解決 複雜度 o n log n 曼哈頓距離是 4 向移動的最少步數,切比雪夫距離則是...
1012 曼哈頓距離 切比雪夫距離
什麼是切比雪夫距離?什麼是曼哈頓距離?傻傻分不清,沒關係,看 曼哈頓距離設平面空間內存在兩點,它們的座標為 x1,y1 x2,y2 則dis x1 x2 y1 y2 即兩點橫縱座標差之和 切比雪夫距離 設平面空間內存在兩點,它們的座標為 x1,y1 x2,y2 則dis max x1 x2 y1 y...
總結 曼哈頓距離轉切比雪夫距離
我們在用二維樹狀陣列的時候,可以得到乙個邊與座標軸平行的矩形內點集的資訊。如果我們需要得到得到到乙個點的距離小於等於k的點的資訊呢。這些點構成的不在是邊也座標軸平行的矩形,而是乙個對角線與座標軸平行的菱形。可以通過轉化,使得整個座標軸旋轉45 然後我們菱形變成了方方正正的矩形,又可以用而二維樹狀陣列...