Najlepszą rzeczą do zrobienia z pytaniami jak to starają się ustalić kilka małych wyników, które pomogą Ci z całego problemu.
Na przykład, nie jest trudno określić, dla któregokolwiek z trzech punktów, A, B i C, które mają warunek, że B wynosi między (więcej o tym za chwilę) A i C, B będą nigdy nie należy oddalać się od czwartego punktu D niż jeden z A i C. Przy standardowej metryce odległości euklidesowej punkt znajduje się między dwoma innymi punktami, jeśli leży na łączącym je segmencie. W przypadku pomiarów Manhattan nie jest to takie proste - częściowo dlatego, że pojęcie segmentu nie jest tak dobrze zrozumiałe.
Bardziej ogólnym sposobem opisywania "między" jest (używając zapisu, że odległość od A do B wynosi | AB |): Punkt B znajduje się między dwoma punktami A, C, jeśli | AB | + | BC | = | AC |
Można zobaczyć, że odległość euklidesowa oznacza to, że B znajduje się na odcinku łączenia A i C.
w odległości Manhattan, oznacza to, że punkt B jest zawarte w prostokącie określonym przez A i C (co oczywiście może być prosty odcinek, jeśli AC jest równoległy do jednej osi).
Wynik ten oznacza, że dla dowolnego punktu, jeśli leży pomiędzy dwoma istniejącymi punktami, nie może być dalej od nowych punktów dodanych do zestawu niż dwóch, które go otaczają.
Ta informacja nie rozwiązuje problemu, ale pozwala odrzucić wiele potencjalnych przyszłych obliczeń. Po ustaleniu, że punkt znajduje się między dwoma innymi, nie ma sensu go śledzić.
Można więc rozwiązać ten problem, śledząc tylko najbardziej odległe punkty i ignorując wszelkie przypadki.
Ciekawym ćwiczeniem dla przypadkowego obserwatora
udowodnić, że można mieć nie więcej niż 4 różne punkty takie, że żaden z tych punktów są między dwoma innymi, w tym sensie, Manhattan.
Dzięki temu drugiemu wynikowi staje się jasne, że będziesz musiał tylko śledzić do 4 punktów.
Niektóre z innych metod, które już przedstawiono, są prawdopodobnie szybsze, ale w ten sposób są bardziej zabawne!
Extra Credit
uogólnić te pomysły n wymiarach
to właśnie tego szukałem, dzięki człowieku :) –