juan_gandhi: (Default)
[personal profile] juan_gandhi
На прямую высаживаются два робота с идентичной программой. Свои координаты они не знают. Как их запрограммировать так, чтобы они обязятельно встретились?

Кто-нибудь знает эту задачу? Или её решение? Мое решение было такое - случайные блуждания. Но мой коллега, [livejournal.com profile] malaya_zemlya, заметил, что совершенно неочевидно, что роботы имеют доступ к датчику случайных чисел, а внутренний генератор... ну вы поняли, он их синхронизирует.

Есть идейки? Мне эту задачку задавали года три назад; я предложил случайные блуждания, но интервьюёры моё решение не поняли. Ну не учили их вероятности. Неважно, однако. Меня больше интересует наличие решения.

Date: 2007-08-02 09:32 pm (UTC)
From: [identity profile] itman.livejournal.com
Как раз с парашютом только и можно решить эту задачу, но при определенных условиях. Представьте себе, что у Вас ограниченный язык, в котором
каждая команда выглядит как:
ШАГ ВЛЕВО (повторить если нет парашюта)
ШАГ ВПРАВО (повторить если нет парашюта)
СМЕНИТЬ НАПРАВЛЕНИЕ (если проскочили парашют)
Насколько я вижу, в данной постановке решения нет. Потому что если первая команда: ШАГ ВЛЕВО, то робот, высадившийся левее, будет всегда идти со скоростью один шаг в так, а второй его никогда не догонит.

Profile

juan_gandhi: (Default)
Juan-Carlos Gandhi

June 2025

S M T W T F S
1 234567
891011121314
15161718192021
22232425262728
2930     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 3rd, 2025 02:51 pm
Powered by Dreamwidth Studios