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

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

У вас восемь бильярдных шаров…

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

Очевидное решение не подходит. Если вы положите на каждую чашку весов по четыре шара, то вы узнаете, в какой из четверок дефектный тяжелый шар. Потом, если вы еще раз поделите эту четверку пополам и положите на каждую чашку по два шара, вы найдете «двойку», в которой есть дефектный шар. Но в этом случае вы уже использовали два разрешенных взвешивания, а дефектный шар еще не найден. Вы не сможете определить, какой из двух «подозреваемых» шаров тяжелее.

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

Во время первого взвешивания положите по три любых шара на каждую чашку весов. Возможно два разных исхода.

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

Другой возможный исход первого взвешивания: одна из двух чашек весов оказывается тяжелее. Дефектный шар должен быть на этой перевесившей чашке весов. Во втором взвешивании вы сравниваете любые два шара из этой тройки. Если один из них оказывается тяжелее, чем другой, — это и есть дефектный шар. Если шары одинакового веса — дефектный шар тот, который вы не взвешивали.

Эта головоломка хорошо известна во всем мире. Она была, например, опубликована в 1956 году в книге Бориса Кордемского «Математическая смекалка», которая была бестселлером в Советском Союзе времен «холодной войны».[151]

Если у вас пять баночек с таблетками…

В данном случае у вас весы, которые показывают вес (а не весы без гирь, о которых шла речь в задаче о биллиардных шарах).

В реальной жизненной ситуации вы, наверное, просто взвешивали бы по одной таблетке из каждой баночки, пока не обнаружили бы ту, которая весит 9 граммов, но вы не можете так поступить, поскольку разрешается только одно взвешивание. Шансов на то, что вам в первом же взвешивании попадется дефектная таблетка, один из пяти.

Это значит, что вам нужно одновременно взвешивать таблетки не из одной баночки, а из нескольких. Рассмотрим простейший случай: вы взвешиваете пять таблеток, по одной из каждой баночки. Тогда итоговый вес обязательно окажется 10+ 10 + 10+ 10 + 9 = 49 граммов. Проблема в том, что это можно узнать и без всякого взвешивания. Это никак не поможет вам узнать, из какой баночки вы взяли дефектную 9-граммовую таблетку.

Вам нужно придумать такую ситуацию, в которой вес таблеток был бы информативным. Одно из решений — пронумеровать баночки № 1, № 2, № 3, № 4, № 5. Потом вы кладете на весы одну таблетку из баночки № 1, две — из № 2, три из № 3, четыре из № 4 и пять из № 5. Вы взвешиваете одновременно все эти таблетки. Если бы все таблетки были нормального веса, то результат был бы 10 + 20 + 30 + 40 + 50 = 150 граммов. На самом деле вес будет меньше, причем на количество граммов, которое соответствует номеру баночки с испорченными таблетками. Например, если общий вес будет 146 граммов (на 4 грамма меньше), это значит, что более легкие дефектные таблетки — в баночке № 4.

Альтернативное решение позволяет определить дефектную бутылку, взвесив меньше таблеток: 1 + 2 + 3 + 4 таблеток из первых четырех баночек. Тогда если вес окажется меньше 100 граммов, то количество граммов, которого не хватает до 100, укажет вам номер дефектной баночки. Если же вес будет ровно 100 граммов, это означает, что дефектные таблетки в пятой баночке.

После того, как вы найдете правильный ответ, вы можете спросить интервьюера о том, для кого предназначаются эти таблетки. Хороший ответ на этот вопрос — «для лошади». 10-граммовая таблетка весит в тридцать раз больше, чем обычная (325 миллиграммов) таблетка аспирина.

Эта головоломка (правда, речь шла о взвешивании монет) упоминалась Мартином Гарднером в его колонке в журнале Scientific American в середине 1950-х. Гарднер описывал ее как «новую и элегантную вариацию» задач о взвешивании, «популярных в последние годы».[152]

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

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

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