Но можно укоротить вариант при том же допущении, поменяв вопросы местами.
Первый вопрос: «Вы живы?». Этим вопросом исключаем второго пациента (всегда лжет), четвертого пациента (всегда говорит «НЕТ»). Если третий пациент (повторяет ответ предыдущего отвечавшего) отвечал после второго или четвертого, то он тоже выбывает.
Второй вопрос: «Вы мертвы?» Этим вопросом исключаем первого пациента (на второй раз говорит неправду), и пятого пациента (всегда говорит «ДА»). Если третий пациент не выбыл после первого вопроса и отвечал после первого или пятого пациента, то он тоже выбывает.
После двух вопросов остались врач, либо врач и третий пациент (при условии, что на предыдущий вопрос третий пациент ответил «НЕТ»).
Если оставшихся двое, то третий вопрос: «Вы врач?».
Тот, кто первым ответит «ДА», тот врач.
Объяснение: Если первым отвечать будет третий пациент, то он повторит свой ответ на предыдущий вопрос и выдаст себя, сказав «НЕТ».
Если третий пациент будет отвечать вторым, то врач на этот вопрос первым ответит «ДА».
Получается два или три вопроса.
Предлагаю следующее решение.
Допущение: задавать можно только вопросы, на которые можно ответить «ДА» или «НЕТ».
Первый вопрос: «Вы пациент?» Этим вопросом исключаем первого (говорит правду через раз) и пятого (говорит «ДА») пациента. Если повезет и третий пациент (повторяет, что сказал предыдущий) будет отвечать после первого и пятого, то третий пациент тоже выбывает.
Второй вопрос: «Вы врач?» Этим вопросом исключаем четвертого пациента (отвечает «НЕТ»). Если третий пациент (повторяет за предыдущим) не выбыл после первого вопроса и отвечал после четвертого, то он тоже выбывает.
Третий вопрос: «Вы живы?» Этим вопросом исключаем второго пациента (всегда лжет).
После третьего вопроса остались врач, либо врач и третий пациент (если он отвечал после врача и ответил «ДА»).
Если оставшихся двое, то четвертый вопрос: «Вы мертвы?».
Тот, кто первым ответит «НЕТ» — врач.
Объяснение: Если первым отвечать будет третий пациент, то он повторит ответ на предыдущий вопрос «ДА» и выдаст себя.
Если третий пациент будет отвечать вторым, то врач на этот вопрос первым ответит «НЕТ».
Получается три или четыре вопроса.
Можно без вопросов узнать, кто из них врач: тот, кто носит белый халат.
Если серьезно, то версия первого ответившего красивая: нужно задать всего один вопрос, хотя бы и несколько раз.
Но по условиям задачи мы ведь не знаем, кто является первым, вторым и т.д. пациентом, и в какой последовательности они отвечают. Поэтому, если в первом туре вторым отвечающим окажется врач, то третий пациент на вопрос о мужчине также ответит «ДА» и перейдет во второй тур. Во втором туре третий пациент будет одним из трех и тоже неизвестно, после кого отвечает. Поэтому может оказаться, что третий пациент и врач останутся в третьем туре вдвоем и, продолжая задавать этот же вопрос, мы не узнаем, кто из них врач.
Разве не так?
Первый вопрос: «Вы живы?». Этим вопросом исключаем второго пациента (всегда лжет), четвертого пациента (всегда говорит «НЕТ»). Если третий пациент (повторяет ответ предыдущего отвечавшего) отвечал после второго или четвертого, то он тоже выбывает.
Второй вопрос: «Вы мертвы?» Этим вопросом исключаем первого пациента (на второй раз говорит неправду), и пятого пациента (всегда говорит «ДА»). Если третий пациент не выбыл после первого вопроса и отвечал после первого или пятого пациента, то он тоже выбывает.
После двух вопросов остались врач, либо врач и третий пациент (при условии, что на предыдущий вопрос третий пациент ответил «НЕТ»).
Если оставшихся двое, то третий вопрос: «Вы врач?».
Тот, кто первым ответит «ДА», тот врач.
Объяснение: Если первым отвечать будет третий пациент, то он повторит свой ответ на предыдущий вопрос и выдаст себя, сказав «НЕТ».
Если третий пациент будет отвечать вторым, то врач на этот вопрос первым ответит «ДА».
Получается два или три вопроса.
Допущение: задавать можно только вопросы, на которые можно ответить «ДА» или «НЕТ».
Первый вопрос: «Вы пациент?» Этим вопросом исключаем первого (говорит правду через раз) и пятого (говорит «ДА») пациента. Если повезет и третий пациент (повторяет, что сказал предыдущий) будет отвечать после первого и пятого, то третий пациент тоже выбывает.
Второй вопрос: «Вы врач?» Этим вопросом исключаем четвертого пациента (отвечает «НЕТ»). Если третий пациент (повторяет за предыдущим) не выбыл после первого вопроса и отвечал после четвертого, то он тоже выбывает.
Третий вопрос: «Вы живы?» Этим вопросом исключаем второго пациента (всегда лжет).
После третьего вопроса остались врач, либо врач и третий пациент (если он отвечал после врача и ответил «ДА»).
Если оставшихся двое, то четвертый вопрос: «Вы мертвы?».
Тот, кто первым ответит «НЕТ» — врач.
Объяснение: Если первым отвечать будет третий пациент, то он повторит ответ на предыдущий вопрос «ДА» и выдаст себя.
Если третий пациент будет отвечать вторым, то врач на этот вопрос первым ответит «НЕТ».
Получается три или четыре вопроса.
Если серьезно, то версия первого ответившего красивая: нужно задать всего один вопрос, хотя бы и несколько раз.
Но по условиям задачи мы ведь не знаем, кто является первым, вторым и т.д. пациентом, и в какой последовательности они отвечают. Поэтому, если в первом туре вторым отвечающим окажется врач, то третий пациент на вопрос о мужчине также ответит «ДА» и перейдет во второй тур. Во втором туре третий пациент будет одним из трех и тоже неизвестно, после кого отвечает. Поэтому может оказаться, что третий пациент и врач останутся в третьем туре вдвоем и, продолжая задавать этот же вопрос, мы не узнаем, кто из них врач.
Разве не так?