Я знаю, что делаю это неправильно, но не могу придумать правильный способ решить эту проблему. Я работаю с 12 пунктами, перечисленными ниже. (1,2)(1,11)(7,8)(9,9)(12,13),(13,4),(20,8),(22,3),(23,12), (24,14),(26,7),(31,10)
Я делю это на два подмножества
Слева = (1,2)(1,11)(7,8)(9,9)(12,13),(13,4)
Справа=(20,8),(22,3),(23,12),(24,14),(26,7),(31,10)
Дальнейшее сокращение
LСлева=(1,2)(1,11)(7,8)
РЛево=(9,9)(12,13),(13,4)
LRight=(20,8),(22,3),(23,12)
RRRight=(24,14),(26,7),(31,10)
Найдите минимальное расстояние для каждого набора.
LLeft (1,2)(1,11) равно 9, (1,11)(7,8) равно 6,7, (1,2)(7,8) равно 8,48
Мин 6.7
RLeft (9,9)(12,3) равно 6,70, (9,9)(13,4) равно 6,4, (12,3)(13,4) равно 1,14
Мин 1.14
LRight (20,8)(22,3) равно 5,38 (20,8)(23,2) равно 5, (22,3)(23,12) равно 9,05
Мин 5
RRight (24,14)(26,7) равно 7,28 (24,14)(31,10) равно 8,06 (26,7)(31,10) равно 5,83
Мин 5.83
Итак, теперь у меня есть LLeft, RLeft, LRight и RRight. Мне нужно найти LRLeft, RLLEft_Right (значение посередине) и LRRight. Вот где я запутался. Единственный способ получить LRLeft, который я могу придумать, — взять каждую точку в LLeft и RLEft и найти расстояние между ними. Затем используйте это расстояние и сравните его с LLeft и RLeft, и это даст мне кратчайшее расстояние между двумя точками для левой стороны. Затем я делаю то же самое для правой и центральной части. Я почти уверен, что есть более быстрый и лучший способ сделать это, но я не могу понять его.