Имя: Пароль:
IT
 
ориентация робота в прямоугольной комнате
0 megabax
 
19.09.13
18:53
Ы общем, имеется некий виртуальный робот, запертый в прямоугольной виртуальной комнате. Его задача найти и обезвредить бомбу. Для обезвреживания роботу необходимо подобрать к бомбе код. Подсказки для кода хранятся в маяках, беспорядочно разбросанных по комнате. Длина кода неизвестна. За один ход робот может двигаться на одну локацию. У робота есть датчики чувствительности бомбы, стенки и маяка. Датчики работают если робот в той же локации что и бомба или маячок. Датчик стенки показывает, может ли робот двигаться в этом направлении.
подскажите плз, наиболее оптимальный алгоритм решения данной задачи (выполнить миссию за меньшее число ходов). Или хотя бы в каком направлении посмотреть.
1 Asmody
 
19.09.13
19:19
(0) ну и задачки вам на собеседованиях дают!
Если расположение маяков произвольное и робот без памяти, то только полным обходом, точнее двумя
2 Asmody
 
19.09.13
19:24
Тебе сюда wiki:RoboMind
3 megabax
 
19.09.13
19:27
(1) Вообще то в условиях задачи не сказано что робот без памяти. Значит, по идее я имею право хранить маршрут в какой нибудь структуре данных
4 megabax
 
19.09.13
19:27
(2) сэнкс
5 Asmody
 
19.09.13
19:29
(3) ну да, координаты бомбы, если встретишь, можешь сохранить, чтоб не искать потом. Но если количество маяков не задано, а обойти надо все, то только полный обход
6 sda553
 
19.09.13
22:53
По спирали от начальной локации, если не задан размер комнаты.
В случае обнаружения бомбы, возвращаться к ней по кратчайшей ломаной для проверки кода, после того как спираль достигнет стенок во всех напралениях.
Сложность алгоритма.
n*n+m*m
n m размеры
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн