kaldiuo's blog

By kaldiuo, history, 7 years ago, In English

It is well known that given points (x, y) and you need to calculate the Manhattan distances between them, instead of using |x1-x2|+|y1-y2| you can first convert all points (x, y) into (x+y, x-y) and the distances will become max(|x1-x2|, |y1-y2|) (also known as Chebyshev distance). Can this trick apply to higher dimensions?

  • Vote: I like it
  • +50
  • Vote: I do not like it

| Write comment?
»
7 years ago, # |
  Vote: I like it +5 Vote: I do not like it

Oh, interesting trick. Can you give me a link to a problem that can be solved using this trick?

»
7 years ago, # |
  Vote: I like it +15 Vote: I do not like it

Well, the unit circles in and are both squares (although one of them rotated and shrinked by ) and therefore isomorphic as stated in the question.

But, the unit circle in is an octahedron, while the unit circle in is just a regular cube. I don't see an elementary formal proof that this implies that there isn't a bijection with wanted properties in dimensions higher than 2, but intuitively it seems that this is the reason the trick doesn't work in higher dimensions.

  • »
    »
    7 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    That's a nice way to see it! Maybe someone who deals with topology can help here? There may be some kind of non-trivial isomorphism between the 2 spaces (not exactly the aforementioned manhattan distance one).

»
7 years ago, # |
  Vote: I like it +53 Vote: I do not like it

IOI 2007 pairs. As I can remember, to solve this problem you should consider 4D space. Transform point (x, y, z) to the point (x + y + z, x + y — z, x — y + z, -x + y + z).

»
10 months ago, # |
  Vote: I like it -32 Vote: I do not like it

nice trick!! but do you have any proof for that? I thought about it but nothing came to mind

  • »
    »
    10 months ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    suppose you have been given two 2-dimenstional points $$$(x1,y1)$$$ and $$$(x2,y2)$$$
    in the new coordinate system these points become $$$(x1 + y1, x1 - y1)$$$ and $$$(x2 + y2, x2 - y2)$$$
    for convenience let $$$a1 = x1 + y1$$$, $$$b1 = x1 - y1$$$, $$$a2 = x2 + y2$$$ and $$$b2 = x2 - y2$$$.
    the points in the new coordinate system are $$$(a1, b1)$$$ and $$$(a2, b2)$$$
    we have to prove that $$$|x1 - x2| + |y1 - y2| = max(|a1 - a2|, |b1 - b2|)$$$

    Consider the $$$RHS$$$

    $$$RHS = max(|a1 - a2|, |b1 - b2|)$$$

    substituting the values for $$$a1, a2, b1, b2$$$ we get
    $$$RHS = max(|(x1 + y1) - (x2 + y2)|, |(x1 - y1) - (x2 - y2)|)$$$

    $$$RHS = max(|(x1 - x2) + (y1 - y2)|, |(x1 - x2) + (y2 - y1)|)$$$

    to simplify this let $$$n = x1 - x2$$$ and $$$m = y1 - y2$$$
    We get $$$RHS = max(|n + m|, |n - m|)$$$

    We can also rewrite the $$$LHS$$$ in terms of $$$n \text{ and } m$$$ as $$$LHS = |n| + |m|$$$

    Now we have to prove $$$|n| + |m| = max(|n + m|, |n - m|)$$$

    This can be proven by considering the four cases

    case 1. $$$n >= 0, m >= 0$$$
    case 2. $$$n < 0, m >= 0$$$
    case 3. $$$n >= 0, m < 0$$$
    case 4. $$$n < 0, m < 0$$$