Как сдвинуть гору Фудзи - Уильям Паундстоун
Шрифт:
Интервал:
Закладка:
Представьте, что вы взяли какой-то фрукт из корзины с надписью «Яблоки». Какую информацию это вам дает? Только один бит информации, который сообщает вам, яблоко это или апельсин. Допустим, это яблоко. Корзина, из которой вы его только что достали с названием «Яблоки», не может быть на самом деле корзиной, где только яблоки. Если уж вы нашли там яблоко, это значит, что в данной корзине должны быть перемешаны яблоки с апельсинами. Прекрасно. Тогда у нас остаются две корзины. На одной из них надпись «Апельсины», а на другой — «Яблоки и апельсины». В корзине «Апельсины» не может быть апельсинов (потому что все ярлыки с названиями ложные), это не может быть и смесь яблок с апельсинами (мы ведь уже знаем, что это корзина с ярлыком «Яблоки», из которой мы достали яблоко). Таким образом, в корзине с ярлыком «Апельсины» должны быть только яблоки, и тогда в корзине с ярлыком «Яблоки и апельсины», очевидно, одни апельсины.
Можно ли считать, что мы нашли решение? Нет. Мы сделали оптимистичное предположение о том, что достанем яблоко из корзины с названием «Яблоки», Это сразу позволяет прийти к выводу, что в данной корзине смесь апельсинов и яблок. Но вы также могли достать апельсин из корзины с надписью «Яблоки». В данном случае невозможно установить, что в этой корзине с надписью «Яблоки» только апельсины или смесь яблок и апельсинов.
Вам нужно быть уверенным в том, что фрукт, который вы достали из корзины, даст вам понять, что в этой корзине. Единственный способ добиться этого— взять фрукт из корзины, на которой ярлык «Яблоки и апельсины». Поскольку все ярлыки неверные, там должны быть фрукты только одного типа. И, достав фрукт, вы знаете, какого именно.
Если это был апельсин, то в данной корзине только апельсины. Тогда у нас остаются две корзины с названиями «Яблоки» и «Апельсины». В одной из этих корзин действительно яблоки, а в другой — смесь. Снова, поскольку известно, что все ярлыки ложные, яблоки не могут находиться в корзине с названием «Яблоки» — они должны быть в корзине с надписью «Апельсины». Это значит, что смесь яблок и апельсинов находится в корзине с названием «Яблоки». Аналогичные рассуждения позволяют решить задачу, если вы достали из корзины с надписью «Яблоки и апельсины» яблоко.
В деревне, где живет пятьдесят семейных пар, каждый из мужей изменял своей жене…
Начните с ситуации, которая существует в деревне до того, как королева сделала свое заявление. Вы знаете, что каждый мужчина изменял своей жене.
Женщины, которые знают о вопиющих нарушениях супружеской верности, должны по закону убить своих неверных мужей. Почему же они еще этого не сделали?
Все дело в том, что только жена неверного мужа обязана его убить. Каждая из женщин деревни знает об изменах мужей других сорока девяти женщин, но ничего не знает об изменах своего собственного мужа. Этикет исключает сообщение этого неприятного факта каждой из женщин.
Это, конечно, странная ситуация, но она вполне обычна для логических головоломок. Но однажды в деревню приезжает королева и говорит, что по крайней мере один муж неверен своей жене. Каким образом это изменит ситуацию?
Никак. По меньшей мере один??? —должно быть, подумают жены, и каждая при этом будет гадать, кого из известных лично ей сорока девяти неверных мужей имела в виду королева. Заявление королевы не сообщило ничего нового кому бы то ни было в деревне.
Вот на чем попадаются многие кандидаты. Если заявление королевы неинформативно — о чем тут еще говорить? Ни одна женщина из-за этого не станет убивать своего мужа. Ничего не произойдет.
И предположение о том, что «ничего не произойдет», верно до конца того дня, когда королева сделала свое объявление.
Ничего не произойдет и на следующий день, и еще через день.
Давайте сразу перепрыгнем в сорок девятый день. Возьмем, к примеру, одну женщину по имени Эдна. Эдне известно об изменах сорока девяти мужей. Среди них есть и Макс — муж ее подруги Моники. Учитывая то, как быстро распространяются слухи, Эдна знает, что Монике должно быть известно (по меньшей мере) о сорока восьми неверных мужьях. Это те сорок восемь, о которых знает Эдна, минус Макс. Никто не осмелится рассказать Монике о проделках Макса.
Теперь вот в чем трюк. На сорок девятый день Эдна должна прийти к выводу, что Моника должна догадаться, что Макс ей неверен. Моника должна понять это (как рассуждает Эдна), потому что никто не был убит в предыдущие дни.
Если бы в деревне был только один неверный муж, его жена должна была убить его в тот день, когда королева сделала свое объявление (назовем этот день первым). Так как в этом случае все женщины знали бы об этом единственном неверном муже за исключением его жены. Она была бы единственной женщиной, которой бы не было известно о неверном муже. Поэтому объявление королевы было бы для нее как удар грома. Поскольку она не знала ни о каких неверных мужьях, этот «по крайней мере» один неверный муж должен быть ее собственным мужем. Она должна была бы убить его в тот самый день, как предписано законом. Конечно, в том случае, если бы в деревне был всего один неверный муж.
Вместо этого настает утро второго дня — и все мужчины живы. Это информирует всех жителей в деревне о том, что неверных мужей более одного. И это, и безупречность королевы подразумевает, что неверных мужей должно быть по крайней мере два.
И если неверных мужей было бы только два, их жены убили бы их на второй день, а если бы их было три — жены бы убили их на третий день, и т. д. И если бы их было сорок восемь — их сорок восемь жен убили бы их на сорок восьмой день.
Сегодня уже сорок девятый день, и Моника, которая знает о сорока восьми неверных мужьях, должна быть удивлена тому, что в предыдущий день не произошло массового убийства. Единственное возможное объяснение (это все еще размышления Эдны о том, что должна была подумать Моника) — муж Моники как раз и есть сорок девятый герой адюльтера.
Таким образом, Эдна должна прийти к заключению, что всегда безупречно логичная Моника должна убить Макса к полуночи сорок девятого дня. Эдна может прийти к подобному же заключению относительно всех остальных женщин деревни. «Да, — думает Эдна, — на сорок девятый день произойдет кровавая баня».
И вот настал сорок девятый день, и все еще ничего не произошло. Единственное возможное объяснение теперь — это то, что Моника (и все остальные женщины) знали о сорок девятом неверном муже. Это не мог быть Макс. Это мог быть только один мужчина: собственный муж Эдны Эдгар!
Итак, на пятидесятый день Эдна должна прийти к заключению, что ее муж неверен ей. Все остальные женщины сделают о своих мужьях такой же вывод.
Ответ на головоломку — ничего не произойдет в первые сорок девять дней, а на пятидесятый день все пятьдесят жен убьют своих мужей.
Это шедевр среди логических головоломок. Однако нельзя с уверенностью утверждать, что эта задача также хороша как инструмент при отборе кандидатов на работу. Первое известное упоминание об этой головоломке в печати — опубликованная в 1958 году книга физика Джорджа Гамоу и математика Марвина Стерна Puzzle—Math («Математические головоломки»).[145] В их версии речь шла о неверных женах. С тех пор эта головоломка широко использовалась. К 1980-м годам речь уже идет о неверных мужьях, и головоломка становится темой исследования одной из научных лабораторий IBM.[146] Джон Аллен Паулос дал в книге Once upon a Number («Жило-было число»), опубликованной в 1998 году, версию, так похожую на ту, что используется Microsoft, что, возможно, корпорация использовала именно этот источник.[147]
Я подозреваю, что типичный читатель этой книги прочитал головоломку, подумал о ней немного, не придя ни к какому выводу, и заглянул в ответ: «Вот это да! Какая замечательная головоломка!» Потом, возможно, загадал ее двум-трем друзьям, которые также не сумели ее решить, но согласились, что у нее потрясающее решение, когда узнали о нем. Популярность логической головоломки никак не зависит от того, может кто-то ее решить или нет.
Это становится проблемой только если кто-то пытается использовать данную головоломку для отбора кандидатов на работу. Хотя в причудливой «рекурсивной» логике, используемой для решения этой задачи, можно найти определенные параллели с программированием, эту головоломку очень трудно решить людям, которые понимают поведение реальных людей (а это полезное качество даже для программиста). Когда они не могут ее решить, это обычно происходит из-за того, что они приходят к верному заключению, что если уж ничего не происходит сразу после заявления королевы, то с течение времени драматизм ситуации будет только ослабевать. Обычно это вполне разумный вывод, если речь идет не о решении логических головоломок.