Читаем Как сдвинуть гору Фудзи? Подходы ведущих мировых компаний к поиску талантов полностью

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

Можно ли считать, что мы нашли решение? Нет. Мы сделали оптимистичное предположение о том, что достанем яблоко из корзины с названием «Яблоки», Это сразу позволяет прийти к выводу, что в данной корзине смесь апельсинов и яблок. Но вы также могли достать апельсин из корзины с надписью «Яблоки». В данном случае невозможно установить, что в этой корзине с надписью «Яблоки» только апельсины или смесь яблок и апельсинов.

Вам нужно быть уверенным в том, что фрукт, который вы достали из корзины, даст вам понять, что в этой корзине. Единственный способ добиться этого — взять фрукт из корзины, на которой ярлык «Яблоки и апельсины». Поскольку все ярлыки неверные, там должны быть фрукты только одного типа. И, достав фрукт, вы знаете, какого именно.

Если это был апельсин, то в данной корзине только апельсины. Тогда у нас остаются две корзины с названиями «Яблоки» и «Апельсины». В одной из этих корзин действительно яблоки, а в другой — смесь. Снова, поскольку известно, что все ярлыки ложные, яблоки не могут находиться в корзине с названием «Яблоки» — они должны быть в корзине с надписью «Апельсины». Это значит, что смесь яблок и апельсинов находится в корзине с названием «Яблоки». Аналогичные рассуждения позволяют решить задачу, если вы достали из корзины с надписью «Яблоки и апельсины» яблоко.

В деревне, где живет пятьдесят семейных пар, каждый из мужей изменял своей жене.

Начните с ситуации, которая существует в деревне до того, как королева сделала свое заявление. Вы знаете, что каждый мужчина изменял своей жене.

Женщины, которые знают о вопиющих нарушениях супружеской верности, должны по закону убить своих неверных мужей. Почему же они еще этого не сделали?

Все дело в том, что только жена неверного мужа обязана его убить. Каждая из женщин деревни знает об изменах мужей других сорока девяти женщин, но ничего не знает об изменах своего собственного мужа. Этикет исключает сообщение этого неприятного факта каждой из женщин.

Это, конечно, странная ситуация, но она вполне обычна для логических головоломок. Но однажды в деревню приезжает королева и говорит, что по крайней мере один муж неверен своей жене. Каким образом это изменит ситуацию?

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

Вот на чем попадаются многие кандидаты. Если заявление королевы неинформативно — о чем тут еще говорить? Ни одна женщина из-за этого не станет убивать своего мужа. Ничего не произойдет.

И предположение о том, что «ничего не произойдет», верно до конца того дня, когда королева сделала свое объявление.

Ничего не произойдет и на следующий день, и еще через день.

Давайте сразу перепрыгнем в сорок девятый день. Возьмем, к примеру, одну женщину по имени Эдна. Эдне известно об изменах сорока девяти мужей. Среди них есть и Макс — муж ее подруги Моники. Учитывая то, как быстро распространяются слухи, Эдна знает, что Монике должно быть известно (по меньшей мере) о сорока восьми неверных мужьях. Это те сорок восемь, о которых знает Эдна, минус Макс. Никто не осмелится рассказать Монике о проделках Макса.

Теперь вот в чем трюк. На сорок девятый день Эдна должна прийти к выводу, что Моника должна догадаться, что Макс ей неверен. Моника должна понять это (как рассуждает Эдна), потому что никто не был убит в предыдущие дни.

Перейти на страницу:

Похожие книги

97 этюдов для архитекторов программных систем
97 этюдов для архитекторов программных систем

Успешная карьера архитектора программного обеспечения требует хорошего владения как технической, так и деловой сторонами вопросов, связанных с проектированием архитектуры. В этой необычной книге ведущие архитекторы ПО со всего света обсуждают важные принципы разработки, выходящие далеко за пределы чисто технических вопросов.?Архитектор ПО выполняет роль посредника между командой разработчиков и бизнес-руководством компании, поэтому чтобы добиться успеха в этой профессии, необходимо не только овладеть различными технологиями, но и обеспечить работу над проектом в соответствии с бизнес-целями. В книге более 50 архитекторов рассказывают о том, что считают самым важным в своей работе, дают советы, как организовать общение с другими участниками проекта, как снизить сложность архитектуры, как оказывать поддержку разработчикам. Они щедро делятся множеством полезных идей и приемов, которые вынесли из своего многолетнего опыта. Авторы надеются, что книга станет источником вдохновения и руководством к действию для многих профессиональных программистов.

Билл де Ора , Майкл Хайгард , Нил Форд

Программирование, программы, базы данных / Базы данных / Программирование / Книги по IT
Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript
Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript

Данная книга посвящена программированию игр с помощью ActionScript. Здесь вы найдете подробные указания, необходимые для создания самых разных игр – аркад, головоломок, загадок и даже игровых автоматов. В тексте приведены исходные коды программ и детальные, доступно изложенные инструкции. Базовые принципы программирования ActionScript рассматриваются на примере игр, однако вы без труда сможете применить полученные знания и для разработки неигровых проектов, таких как Web-дизайн и реклама. Рекомендации Гэри Розенцвейга помогут вам не только придумывать занимательные игры и размещать их на Web-сайте, но и оптимизировать скорость их работы, а также защищать свои творения от несанкционированного копирования. Представленный в книге код несложно изменить для использования в других программах.Книга предназначена для широкого круга читателей – создателей анимационных роликов, художников-оформителей, программистов и разработчиков Web-сайтов. Издание может также выступать в качестве практического пособия по изучению ActionScript.

Гэри Розенцвейг

Программирование, программы, базы данных / Программирование / Книги по IT
Программирование. Принципы и практика использования C++ Исправленное издание
Программирование. Принципы и практика использования C++ Исправленное издание

Специальное издание самой читаемой и содержащей наиболее достоверные сведения книги по C++. Книга написана Бьярне Страуструпом — автором языка программирования C++ — и является каноническим изложением возможностей этого языка. Помимо подробного описания собственно языка, на страницах книги вы найдете доказавшие свою эффективность подходы к решению разнообразных задач проектирования и программирования. Многочисленные примеры демонстрируют как хороший стиль программирования на С-совместимом ядре C++, так и современный -ориентированный подход к созданию программных продуктов. Третье издание бестселлера было существенно переработано автором. Результатом этой переработки стала большая доступность книги для новичков. В то же время, текст обогатился сведениями и методиками программирования, которые могут оказаться полезными даже для многоопытных специалистов по C++. Не обойдены вниманием и нововведения языка: стандартная библиотека шаблонов (STL), пространства имен (namespaces), механизм идентификации типов во время выполнения (RTTI), явные приведения типов (cast-операторы) и другие. Настоящее специальное издание отличается от третьего добавлением двух новых приложений (посвященных локализации и безопасной обработке исключений средствами стандартной библиотеки), довольно многочисленными уточнениями в остальном тексте, а также исправлением множества опечаток. Книга адресована программистам, использующим в своей повседневной работе C++. Она также будет полезна преподавателям, студентам и всем, кто хочет ознакомиться с описанием языка «из первых рук».

Бьерн Страуструп , Бьёрн Страуструп , Валерий Федорович Альмухаметов , Ирина Сергеевна Козлова

Программирование, программы, базы данных / Базы данных / Программирование / Учебная и научная литература / Образование и наука / Книги по IT