Уважаемые форумчане! Может кто-нибудь объяснит подробно, как правильно решать эту задачу "Есть ли жизнь на Марсе" http://acmp.ru/index.asp?main=task&id_task=556. Я нашел ее решение, она проходит все тесты, но меня интересует, как строится динамика и делаются правильно переходы.Как надо рассуждать, чтобы получить эти формулы. Спасибо за помощь.
Одно из самых простых состояний динамики dpi, j — вероятность узнать от i человека при j = 1 правду, при j = 0 ложь. Ответ будет в dpn, 1, а переходы будут такими:
Что это значит: если текущий человек соврал мы узнаем от него правду, только если предыдущий сказал ему ложь, если он не соврал, то мы узнаем от него правду, только если предыдущий сказал ему правду. Аналогично, для лжи.
Я понимаю так. Если у нас есть один человек, то он может сказать правду и вероятность будет равнв 1. Если же он солгал, то вероятность ровна 0. Потом смотрим ситуацию для двух человек. Вероятность будет равна предыдущей вероятности для одного человека сказавшего правду умножить на его теперешнюю вероятность при условии, что он сказал тоже правду + предыдущая вероятность для одного человека сказавшего ложь умножив на текущую его вероятность. Или я не так понимаю?
Не совсем, у каждого человека есть своя вероятность услышать от него правду или ложь. Рассмотрим двух человек. У первого вероятность сказать правду p1, а солгать — q1 = 1 - p1, у второго соответственно p2 и q2. Первому сообщили информацию, он передал ее второму, а второй нам. Какова вероятность, что мы получим правду? Если они оба сказали правду или оба солгали, то вероятность будет p1·p2 + q1·q2, а вероятность получить ложь p1·q2 + q1·p2.
Спасибо за помощь. Разобрался и все понял.