Pentru a rezolva aceasta problema, vom folosi distanta Manhattan ( documentatie wikipedia, nist sau mathworld). Astfel vom avea de tratat 2 cazuri posibile:
I. punctele sunt situate in plan
Avem 2 puncte situate intr-un sistem de axe ortogonal xOy iar deplasarea se poate realiza doar paralel cu axele Ox si Oy. Pentru a calcula distanta dintre punctele A(x1, y1) si B(x2, y2) vom aplica formula:
|x1 – x2| + |y1 – y2|
Formula se poate dovedi foarte folositoare in rezolvarea anumitor probleme de informatica unde o matrice (tablou bidimensional) de dimensiuni mari poate fi inlocuita de 2 vectori ( sau chiar unul). Pentru a folosi formula in C/C++ veti avea nevoie de functia abs():
abs(x1- x2) + abs(y1 – y2)
II. punctele sunt situate in spatiu
In acest caz mai apar 2 coordonate: z1 si z2. Formula devine:
|x1 – x2| + |y1 – y2| + |z1 – z2|
pentru punctele A(x1, y1, z1) si B(x2, y2, z2).