Практика «Хождение по чекпоинтам»
Скачайте проект route-planning.
Роботу нужно проехать через указанные точки, посетив каждую хотя бы один раз. Нужно спланировать маршрут так, чтобы суммарный путь был минимален.
В файле PathFinderTasks допишите код функции int[] FindBestCheckpointsOrder(Point[] checkpoints)
.
Функция принимает массив чекпоинтов. Робот изначально находится в точке checkpoints[0]
.
Вернуть нужно порядок посещения чекпоинтов.
Например, если функция возвращает массив {0,2,1}, это означает,
что робот сначала поедет в чекпоинт с индексом 2, а из него в чекпоинт с индексом 1 и на этом закончит свой путь.
Действуйте как на лекциях, можете адаптировать код с лекций. Функция должна быть рекурсивной.
Реализуйте следующую оптимизацию (отсечение перебора): прекращайте перебор, если текущая длина пути уже больше, чем минимальный путь, найденный ранее.
Купить решение:
Ваш Email (на него будет отправлен ответ)
Продолжая, вы соглашаетесь с пользовательским соглашением
Возможны трудности с доставкой сообщений на Gmail
Практика, практика и еще раз практика!
Войдите или зарегистрируйтесь, чтобы отвечать на тесты и решать задачи.