Это значит, что вам нужно одновременно взвешивать таблетки не из одной баночки, а из нескольких. Рассмотрим простейший случай: вы взвешиваете пять таблеток, по одной из каждой баночки. Тогда итоговый вес обязательно окажется 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-х. Гарднер описывал ее как «новую и элегантную вариацию» задач о взвешивании, «популярных в последние годы».
Три муравья находятся в трех углах равностороннего треугольника…
Есть два способа движения, при котором муравьи не встретятся друг с другом: они все должны двигаться по часовой стрелке или все против часовой стрелки. В противном случае встречи им не избежать.
Выберите одного муравья и назовите его, например, Биллом. После того, как Билл решил, в какую сторону двигаться (по часовой стрелке или против часовой стрелки), другие муравьи должны двигаться в том же направлении, чтобы не столкнуться. Поскольку муравьи принимают решение случайным образом, шансы на то, что второй муравей направится в ту же сторону, что и Билл, — один из двух, аналогично и для третьего муравья эта вероятность такая же. Это значит, что вероятность избежать столкновения — один из четырех.
Четыре собаки находятся в разных углах большого квадрата…
Чтобы упростить решение задачи, предположим, что длина стороны квадрата 1 миля, а собаки — это гончие, выведенные генетиками, которые бегут со скоростью ровно одна миля в минуту. Представьте себе, что вы блоха, которая едет на спине собаки номер 1. У вас есть крошечный радар, который позволяет вам точно измерить скорость движения других объектов относительно вашей системы отсчета (ею служит в данном случае собака номер 1, в шерсть который вы вцепились пятью вашими лапками, а в шестой вы держите радар). Собака 1 преследует собаку 2, которая преследует собаку 3, которая преследует собаку 4, которая, в свою очередь, преследует собаку 1. В начале погони вы направляете радар на собаку 4 (которая гонится за вами). Радар вам сообщает, что собака 4 приближается к вам со скоростью 1 миля в минуту.
Чуть позже вы снова проверяете показания вашего ручного радара. И что же вы видите теперь? В этот момент все собаки уже пробежали какое-то расстояние и находятся ближе друг к другу и все они немного изменили направление движения, чтобы направляться точно к той собаке, которую они преследуют. Четыре собаки все еще образуют правильный квадрат. Каждая из них по-прежнему преследует свою «собаку-мишень» со скоростью 1 миля в минуту, и каждая «мишень» движется, как и раньше, под прямым углом к преследователю. Поскольку все мишени движутся под прямым углом к направлению движения преследователей, те догоняют их на полной скорости. Это означает, что ваш радар по-прежнему покажет, что собака 4 приближается к вам со скоростью 1 миля в минуту.
Такими же будут показания радара в течение всей погони: собака 4 приближается к вам на скорости 1 миля в минуту. Все эти рассуждения о блохах и радарах — всего лишь красочный способ проиллюстрировать то, о чем говорится в условии задачи: собаки догоняют свои «мишени» с постоянной скоростью.
Не играет никакой роли, что ваша система отсчета (то есть собака) сама движется относительно других собак. Эта система отсчета не хуже любой другой (если интервьюеры станут к вам приставать по этому поводу, отвечайте им, что так сказал Эйнштейн). Единственное, что играет роль, — собака 4 приближается к вам с постоянной скоростью. Поскольку в начале погони собака 4 находилась от вас на расстоянии одной мили и приближалась к вам с постоянной скоростью 1 миля в минуту, она непременно столкнется с вами через одну минуту. Блохи-наездники на других собаках, несомненно, придут к такому же выводу. Все собаки столкнутся друг с другом через минуту после старта.
Где это произойдет? Собаки движутся по абсолютно симметричным траекториям. Было бы странно, если бы они при этом отклонились на «две трамвайные остановки» к востоку или западу. Нет никакой силы, которая бы подталкивала их к востоку или западу. Что бы ни происходило, симметрия исходной ситуации должна сохраниться. Если уж собакам суждено догнать друг друга — это произойдет точно в середине квадрата.
Если посмотреть сверху, то траектория движения каждой из собак окажется изящной спиралью, но вам не нужно этого знать, чтобы решить задачу. Вам также не нужно использовать, вопреки тому, что предлагают многие люди, интегральное исчисление. Этот вопрос как раз и проверяет, не помешают ли вам школьные знания высшей математики найти более простое решение.
Эту задачу также в 1950-х годах упоминал Мартин Гарднер.
Поезд отправляется из Лос-Анджелеса в Нью-Йорк с постоянной скоростью…
Птица всегда останется самым быстрым объектом в этой головоломке. Ничего из того, что делает птица, никак не может повлиять на то, что происходит с поездами.
Назовем поезда Восточным (тот, что идет на восток) и Западным (тот, что идет на запад). Поскольку птица быстрее, чем Восточный поезд, она долетит до Западного поезда раньше, чем он встретится с Восточным, то есть до крушения.
В тот самый миг, когда птица долетит до Западного поезда, она поворачивает и летит в обратную сторону. Теперь она уже летит впереди Западного поезда на запад навстречу Восточному. И снова птица первая встретится со встречным поездом. Она снова поворачивает обратно, и начинается новый цикл. Единственная разница в том, что с каждым новым циклом поезда оказываются все ближе и ближе друг к другу. Неважно, насколько близко, потому что птица каждый раз успевает улететь в обратную сторону еще до того, как произойдет столкновение. Это значит, что птица снует туда-сюда бесчисленное множество раз.
Во всяком случае теоретически. За мгновение до столкновения птица окажется зажатой между поездами, которые ее раздавят, но вы можете не обращать внимания на подобные кровавые подробности.
Труднее игнорировать бесконечные ряды. Большинство людей, которых интервьюируют в
Microsoft,когда-то изучали их, но многие уже позабыли ко времени интервью в Редмонде.
Вообще-то можно не беспокоиться о бесконечных рядах. Два поезда сближаются с относительной скоростью 35 миль в час (15 + 20 миль в час). Допустим, расстояние между Нью-Йорком и Лос-Анджелесом — 3500 миль. Тогда столкновение поездов произойдет через 3500/35, или 100 часов.
Все это время птица будет в полете, летая между поездами с постоянной скоростью 25 миль в час. Хотя направление полета и меняется, она тем не менее постоянно летит именно с этой скоростью. Таким образом, летая со скоростью 25 миль в час в течение ста часов, птица пролетит 25 х 100 = 2500 миль. Или, если D — это реальное расстояние между Лос-Анджелесом и Нью-Йорком, то столкновение между поездами произойдет через D/35 часов, а птица за это время пролетит 25D / 35, или 5D / 7 миль.
Рассказывают, что кто-то задал один из вариантов этой задачи математику Джону фон Нейману (1903-1957). Тот так быстро дал ответ, что его знакомый сказал: «Ну, ты, наверное, знал, в чем здесь трюк».
«Какой трюк? — спросил Фон Нейман. — Я просто вычислил сумму бесконечного ряда».
У вас 26 констант…
Вы читаете английские тексты слева направо, поэтому, допустим, что вы попали в эту ловушку и начали анализировать выражение слева. Что такое константа X?
X — это двадцать четвертая буква английского алфавита, равная 24, возведенным в степень, значение которой равно значению предыдущей константы W. Поскольку W — это двадцать три в степени U, которая 22 в степени Т, которое 21 в степени… X
Все это значит, что X — это 24, возведенные в степень 23 в степени 22 в степени 21… и так далее, до 3 в степени 2 в степени 1. То есть это 23-ступенчатые экспоненты.
X — это очень большое число.
Поисковый интернет-портал
Google(произносится Гугл) получил свое название от числа, название которого, правда, пишется чуть иначе — googol (гугол), значение которого можно записать как единицу со ста нулями. Есть еще большее число, названное googolplex (гуголплекс)—это единица, за которой следует гугол нулей. Ни гугол, ни гуголплекс не имеют никакого практического применения за исключением иллюстрации того факта, что существуют абсурдные огромные числа. В наблюдаемой вселенной нет никаких объектов, количество которых составляло бы гугол. А гуголплекс — это такое огромное число, что его даже не записать. Поскольку количество нулей в этом числе — гугол, а даже количество атомов или кварков во вселенной меньше, вам никогда не написать это число на бумаге, сколько бы у вас ни было бумаги и каким бы мелким почерком вы ни писали.
Но даже гуголплекс — это маленькое число, если сравнить его с числом X из головоломки
Microsoft.Корпорация
Intelеще не изготовила достаточно микропроцессоров, чтобы рассчитать значение X. Даже если закон Мура будет выполняться до конца времен и каждые пять лет будут появляться новые Супер-Пентиумы и вы заполните всю вселенную этими процессорами, вы все равно не сможете рассчитать невообразимо огромное значение X.
Тот факт, что интервьюер просит вас рассчитать точное количественное значение выражения, в котором таких X множество, должно подсказать вам, что здесь есть какой-то трюк.
Правильный ответ — ноль. Среди 26 сомножителей должен быть один со значением (X — X) — а это, конечно, ноль. Неважно, чему равны все остальные сомножители — что бы вы ни умножили на ноль, результатом все равно будет ноль.
У таких вопросов с подвохом может быть разная форма. Этот похож на детские картинки-загадки, на которых нужно отыскать спрятавшихся мальчиков или кошку. Нет общего правила поиска трюка — подобно кошке на загадочной картинке, трюк может быть спрятан где угодно. То, насколько быстро вы обнаружите трюк, зависит от того, на что вы обратите внимание в первую очередь, во вторую и третью. Ключевой множитель (X — X), естественно, «спрятан» там, где интервьюеры
Microsoftставят многоточие в выражении, которое нужно вычислить по условиям задачи.
Резонно проверить, умеет ли кандидат на работу сначала оценить всю ситуацию в целом, прежде чем тратить время и энергию на какое-то занятие, которое может оказаться бессмысленным. Но для многих людей «ситуация в целом» в первую очередь характеризуется тем, что им нужно пройти трудное интервью, во время которого любые сомнения и колебания могут снизить их шансы на успех. Даже если в нормальной ситуации эти люди склонны сначала проанализировать проблему, а уже потом заниматься вычислениями, и даже если они подозревают, что задача может быть с подвохом, в стрессовой ситуации они начинают заниматься алгебраическими вычислениями, то есть привычно двигаются «слева направо». Они могут идти по этому неверному пути некоторое время и только потом найти простое решение.
Разработайте систему счисления с основанием минус 2.
Эта глупая просьба долго использовалась в интервью, проводившихся в компании
Microsoft.На самом деле нет никакого «минус двоичного» счисления. Это все равно, что попросить кого-нибудь написать несколько предложений на языке Клингонов — фантастической инопланетной расы из сериала
Star Trek. Тем не менее можно изобрести логичную и последовательную систему счисления с основанием минус 2. Это как раз то, что от вас ожидается.
Мы пользуемся системой счисления с основанием 10. Это значит, что, когда мы записываем числа, мы представляем их как степени числа 10. Например, 176 — это 1 х 10
?+ 7 х 10 + 6 х 100. (Существует договоренность, что любое число в степени 0 равно 1.) Еще одна важная особенность десятичной системы счисления — это то, что в ней используется десять цифр (0, 1, 2, 3, 4, 5, 6, 7, 8 и 9).
Компьютеры используют систему счисления с основанием 2, или двоичную. В ней используются только две цифры (0 и 1). В многозначном числе (таком, как 10 010) каждый знак или позиция обозначает последовательные степени числа два — 1, 2, 4, 8, 16, 32… Двоичное число, например 10 010, означает 1 х 2 в четвертой степени + 0 х 2
?+ 0 х 2
?+ 1 х 2 + 0 х 2 в нулевой. В обычной, десятичной системе счисления оно равно 18.
В общем, система счисления с любым основанием похожа на систему строительных блоков разных размеров. В десятичной системе размеры этих блоков 1, 10, 100, 1000 и т.д. В двоичной системе размеры блоков — 1, 2, 4, 8, 16 и т.д. Используя комбинации этих «блоков», можно получить любое нужное число.
Итак, какими будут обозначения в системе счисления с основанием минус 2?
Очевидно, что в этой системе счисления числа должны выражаться как суммы степеней числа 2. Последовательность степеней числа —2: -2, 4, -8, 16, -32…
Она отличается тем, что нечетные степени оказываются отрицательными (-2 х —2 = +4, но —2 х —2 х —2 = —8). Таким образом, вам нужно выразить числа как сумму этих положительных и отрицательных степеней.
Вы можете усомниться, можно ли этого добиться для любого числа? Да, можно. Вы можете таким способом записать любые положительные и отрицательные числа (при этом вам не понадобятся знаки плюс и минус, которыми вы обозначаете положительное это число или отрицательное в десятичной системе). В целом для того, чтобы отобразить число в системе счисления с основанием минус 2, нужно больше разрядов, чем в обычной двоичной системе.
Перед тем, как мы начнем считать, нужно решить еще одну проблему. Какие цифры мы станем использовать в минус двоичной системе? 2? 0 и 1? 0 и -1? Или нечто совершенно другое?
В системах с нормальным основанием количество цифр равно основанию. В десятичной системе десять цифр, в двоичной — только две цифры.
Если бы вы стали буквально следовать этому правилу, то пришли бы к заключению, что в минус-двоичной системе должно быть минус две цифры — это даже меньше, чем вообще ни одной цифры.
Правила создаются для того, чтобы их нарушать, и все же есть изящные нарушения правил и неряшливые нарушения. Вам нужно сохранить «дух» позиционной системы счисления и перенести его на «инопланетную» почву отрицательных чисел. Правило, что количество цифр равно основанию, неприменимо для систем счисления с негативным основанием.
Наиболее очевидное решение использовать цифры 0 и 1. Это те же цифры, которые используются в обычной двоичной системе счисления. Альтернативное решение, возможно, более соответствующее духу минус двоичной системы счисления, — использовать цифры 0 и —1, причем последняя цифра должна восприниматься как единый символ. Хотя это несколько трудно и тяжеловесно. Остановимся на более простом варианте с цифрами 0 и 1.
Единицу можно просто записать как 1 (это значит 1 х (-2) в нулевой степени).
С двойкой сложнее. Вторая позиция, считая справа налево, — это —2. Это значит, что 10 (в минус двоичной системе) будет 1 х (-2) в первой + 0 х (-2) в нулевой = —2 + 0, или —2.
Попробуйте 111. Это 1 х (-2) в квадрате + 1 х (-2) в первой + 1 х (-2) в нулевой = 4 + (-2) + 1 = 3. Теперь замените единицу на ноль в первой справа позиции: 110 = 4 + (-2) + 0 = 2. Итак, вот что мы должны написать в минус двоичной системе для того, чтобы получилась двойка, — 110.
И мы только что выяснили, что тройка в минус двоичной системе — 111.
С четверкой все просто. Третья позиция — это 4, как и в обычной двоичной системе. Четыре записывается как 100.
Если вы поставите единицу в крайней справа позиции, то получится пятерка в минус двоичной системе, или 101.
Для того чтобы получилось шесть, не стоит ставить 1 во второй или четвертой позициях справа, так это дает негативные числа (соответственно —2 и —8). Вам нужно перепрыгнуть на пятую позицию, единица в которой обозначает +16. Таким образом, 10 000 — это 16. Это слишком много, но 11 000 — это 16 + (-8) = 8. Отнимите от этого числа двойку — для этого нужно поставить 1 во второй справа позиции (11 010), и вы запишете шестерку в минус двоичной системе.
Семерка получается, если добавить 1 в крайней правой позиции
(11011).
Мы уже раньше узнали, что 11 000 — это восемь.
Добавьте единицу в первой справа позиции — получите девять (11001).
С десяткой придется повозиться. Начните с восьмерки (11 000). Добавьте к этому числу четыре, поставив 1 в третьей позиции (11 100). Теперь вычтите два, поставив 1 во второй позиции (11 110). Это и есть десять.
Итак, первые десять чисел в позиционной системе счисления с основанием минус 2 — это: 1, 110, 111, 100, 101, 11010, 11011, 11000, 11001 и 11110.
У вас два сосуда и 100 шариков…
На первый взгляд кажется, что изменить вероятность в ту или иную сторону невозможно. Количество красных и синих шариков абсолютно одинаково. Вам нужно все их использовать — нельзя «потерять» несколько синих шариков. Шарики достают абсолютно случайным образом. Разве шансы достать красный шарик не должны быть 50 на 50?
Так и будет, если вы положите 25 шариков каждого цвета в оба сосуда. Более того, вероятность будет 50 на 50, когда в каждом из сосудов по пятьдесят шариков независимо от того, в какой пропорции в каждом из них перемешаны цвета. Положите все красные шарики в сосуд А, а все синие — в сосуд В. И в том случае вероятность вытащить красный шарик в точности 50%, потому что такова вероятность выбора сосуда А (а любой случайно выбранный из него шарик, как мы знаем, окажется красным).
Вот что может подсказать ответ на задачу. Вам не нужно класть все 50 красных шариков в сосуд А. Достаточно положить туда всего один красный шарик: ведь и в этом случае вероятность того, что будет выбран сосуд А, остается 50 процентов. Тогда и в этом случае из него случайным образом будет «выбран» только красный шарик — учитывая, что выбирать-то там нечего.
Таким образом, уже только за счет сосуда А вероятность выбора красного шарика составит 50 процентов. Но у вас еще осталось 49 красных шариков, которые вы должны положить в сосуд вместе с 50 синими. В этом случае, если будет выбран сосуд В, шансы выбрать красный шарик из этого сосуда также будут почти 50 на 50 (в действительности эта вероятность равна 49 из 99). Таким образом, вероятность выбора красного шарика в целом (когда шарик случайным образом берется из одного из двух сосудов) будет чуть меньше 75 процентов (50% + 1/2 от 49/99, а если сосчитать точно — 74,74%).
Вот такой трюк используется при определении избирательных округов.
У вас есть два ведра емкостью 3 литра и 5 литров и неограниченный запас воды. Как можно отмерить точно 4 литра воды?
Давайте подумаем о том, какое количество воды вы можете отмерить. Опустите 3-литровое ведро в колодец с неисчерпаемым запасом воды и вытащите его с водой: вот вам 3 литра воды. Проделайте то же самое с другим ведром — вот и еще 5 литров.
Для того чтобы отмерить любое другое количество, вам нужно разрешить неопределенность в формулировке условия задачи. Какие действия разрешается совершать, чтобы «точно отмерять нужное количество воды?»
Если бы у вас был «не глаз, а алмаз», вы могли бы на глазок отлить точно один 1 воды из 5-литрового ведра. Это и было бы решением задачи. Очевидно, так вы поступить не можете — иначе вам бы не задавали эту задачу.
Конечно, вы можете добавлять воду. Если бы вам удалось каким-то образом налить по 2 литра воды в 3-литровое ведро и в 5-литровое, то, перелив содержимое 3-литрового ведра в 5-литровое, вы бы получили ровно 4 литра воды.
Но, похоже, что эта операция ничего вам не дает. Вам даже никак не получить 3 + 3 = 6 литров воды, потому что в 5-литровом ведре 6 литров воды не поместится. Вы можете подумать о том, чтобы переливать отмеренное количество воды в ванну, пустой плавательный бассейн, пересохшее озеро — да куда угодно. Интервьюер не разрешит вам делать это. Вы можете представить, что находитесь на планете, которая вся покрыта океаном, и ваши два ведра — это единственные сосуды в этом мире.
Раз уж сложение не помогает решить эту задачу, вы можете попробовать использовать чуть более сложное действие, а именно вычитание. Налейте 5 литров воды в большее ведро, а затем аккуратно переливайте воду в 3-литровое ведро, пока оно не заполнится. А теперь стоп! Если вы ничего не пролили, то теперь у вас в 5-литровом ведре ровно 2 литра воды.
Если вы их оставите в 5-литровом ведре, то никогда не решите эту задачу. Единственный способ продвинуться в ее решении — опорожнить 3-литровое ведро и перелить два литра из 5-литрового ведра в 3-литровое.
Теперь вам нужно наполнить до краев 5-литровое ведро, а затем аккуратно отливать из него воду в 3-литровое ведро, пока оно не заполнится до краев. Таким способом вы отольете из 5-литрового ведра 1 литр воды, а это значит, что в нем останется 4 литра воды.
Альтернативное решение (для него потребуется переливать воду на один раз больше) — это наполнить 3-литровое ведро водой и перелить из него воду в 5-литровое ведро. Потом проделать это еще один раз и снова перелить воду в 5-литровое ведро, пока оно не заполнится до краев (тогда в 3-литровом ведре останется 1 литр воды). Теперь вылейте воду из 5-литрового ведра. Перелейте 1 литр воды в пустое 5-литровое ведро. Снова наполните 3-литровое ведро и перелейте из него воду в 5-литровое ведро, после чего в нем окажется 4 литра воды.
У.У. Раус Болл упоминает эту головоломку в своем сборнике
Mathematical Recreations and Essays («Математические досуги и эссе», 1892 год),популярном в викторианскую эпоху. Болл считал, что эту головоломку придумали в средние века.
Хотя Льюис Терман использовал более простую версию этой задачи в своем первом тесте IQ, он сообщал, что две трети «обычных взрослых людей» не успевали решить эту задачу за отведенные на это пять минут. «Если читателю покажется, что для решения этой задачи от него требуется слишком много изобретательности, — писал Терман, — стоит напомнить читателю, что в истории человечества важные изобретения не рождались неожиданно, подобно Минерве
, но делались постепенно, шаг за шагом».
Минерва-Шминерва — версия задачи, использованная Терманом, действительно легкая. Это может отражать долговременную тенденцию увеличения «среднего» балла IQ (которую можно отметить, если вы используете для тестирования интеллекта тот же набор вопросов, что использовался в прошлом). В отличие от ожиданий Термана, среда оказывает существенное влияние на балл IQ.
Более трудная версия этой задачи, применявшаяся
Microsoft,была использована в фильме
Die Hard with a Vengeance («Крепкий орешек», 1995 год).В этом фильме коварный преступник так настроил бомбу, что она должна была взорваться, если бы Брюс Уиллис и Сэмюель Л. Джексон не решили бы эту задачу. В их распоряжении был фонтан в парке и два пластмассовых ведра указанных размеров. Отмеренную воду нужно было поставить на весы. Они не могли гадать и действовать приблизительно, потому что бомба взорвалась бы даже если бы они ошиблись всего на одну унцию (28,3 грамма). Они не могли и просто уйти, потому что у бомбы был «детектор близости цели». Уиллис и Джексон смогли найти решение, да еще и дружески переругивались при этом («Я тебе не нравлюсь, потому что я белый!» / «Ты мне не нравишься, потому что я из-за тебя могу взлететь на воздух!»).
Один из ваших работников настаивает на том, чтобы ему платили золотом каждый день…
Вам нужен один кусок золота, чтобы заплатить вашему работнику за первый день. Очевидный способ — отрезать один кусок от конца золотого слитка. Менее очевидный способ: отрезать этот кусок в середине слитка, использовав для этого оба разрешенных вам разреза. Попробуйте сначала очевидный план (оставив за собой право пересмотреть свое решение). Вы отрезаете один кусок от конца бруска и отдаете его работнику.
Это оставляет вам слиток, состоящий еще из шести кусков, и один-разрез.
На второй день вы можете отрезать еще один кусок на конце слитка, но тогда у вас останется слиток из пяти кусков, а отрезать от него уже больше ничего нельзя. Вам нечем будет платить работнику на третий день.
Альтернативное решение — отрезать сегмент, состоящий из двух кусков. Тогда в конце второго дня вы можете отдать его работнику и получить от него назад один кусок как сдачу (при этом вы должны надеяться на то, что работник этот кусок еще не потратил).
Это оставит вас со слитком, состоящим из четырех кусков, одним куском, который вы получили как сдачу, а разрезов больше вы уже делать не можете. На третий день вы отдаете работнику один кусок. На четвертый день вы отдаете ему то, что осталось от слитка, то есть четыре куска, а два меньших он вам возвращает как сдачу. Затем вы аналогичным образом используете их, чтобы заплатить работнику на пятый, шестой и седьмой день.
У вас есть
bкоробок и
nбанкнот в один доллар…
Основная идея решения аналогична той, что использовалась в задаче о золотом слитке. Вы используете бинарную систему счисления. Положите в первую коробку 1 доллар, во вторую 2, в третью — 4 и т. д. Любую нужную сумму можно представить как сумму различных степеней числа 2.
Отличие от приятной загадки с золотым бруском заключается в том, что данная головоломка проверяет, как вы «справляетесь с исключениями». Одна из сложностей связана с тем, что не все
nоказываются суммой последовательных степеней числа 2. У вас, вероятно, образуется какой-то «остаток» денег после того, как вы разложите по коробкам все возможные для данного
nпоследовательные степени числа 2. Еще одна проблема — вам может не хватить коробок.
Допустим, у вас 100 долларов. У вас будут коробки, в которые вы положите 1, 2, 4, 8,16, 32… доллара, но у вас окажется недостаточно денег для того, чтобы в следующую коробку положить 64 доллара, поскольку вы уже положили в предыдущие коробки 1 + 2 + 4 + 8 + 16 + 32 = 63 доллара. Это значит, что у вас есть остаток в 37 долларов, а это число — нечетное и никак не может быть степенью двойки.
Каким же образом вы сможете получить любую требуемую сумму от 0 долларов до 100? Используя первые шесть коробок, вы можете выплатить любую сумму от 0 до 63 долларов (чтобы выплатить 0 долларов, вы «передаете» ноль коробок!!!).
А что если вам нужно выплатить 64 доллара? Сначала вы отдаете седьмую коробку, в которой 37 долларов. Затем вычитаете 37 долларов из 64 долларов, и остается 27 долларов. Эту сумму вы можете выплатить, используя первые шесть коробок, суммы в которых соответствуют степеням числа 2. В данном конкретном случае вы отдаете коробки, сумма денег в которых равна 37, 16, 8, 2 и 1 доллару. Аналогичный принцип можно использовать для любой суммы в пределах 100 долларов.
Когда интервьюер спрашивает вас об «ограничениях» для
bи
n,он имеет в виду: «Каким образом вы можете определить, будет ли данный план работать для конкретных значений
bи
n?». Например, очевидно, что, если у вас есть миллион долларовых банкнот и всего одна коробка, такой план работать не будет. У вас недостаточно коробок для такой суммы. Обратите внимание, что обратная проблема вас не должна беспокоить: если у вас мало долларов и много коробок — все в порядке.
Вам нужно найти общую формулу, которая связывает
bи
n.Набросайте таблицу, показывающую, какую сумму вы можете выплатить, если у вас есть данное количество коробок.
b
—
n 1 — до 1 доллара
2 — до 2 + 1 = 3 долларов
3 — до 4 + 2 + 1 = 7 долларов
4 — до 8 + 4 + 2 + 1 = 15 долларов.
Это приемлемый ответ. Он будет выглядеть немного более изящно, если вы добавите по 1 к правой и левой части:
n+ 1 < 2
b. Это, аналогично утверждению, что
nдолжно быть меньше или равно 2
b. Как бы ни отражала эта загадка «цифровой дух нашего времени», она использовалась в той или иной форме еще со времен Ренессанса. Обычно ее называют задачей на взвешивание Баше, потому что она была упомянута в книге Клода Каспара Баше
Problemes plaisans et dekctables (фр. «Приятные и восхитительные задачи»),опубликованной в 1612 году.
Баше спрашивал, какое минимальное количество гирь необходимо для того, чтобы уравновесить любой вес от 1 до 40 фунтов. Еще более ранняя версия этой задачи, тоже о взвешивании, была опубликована в трактате об измерениях Николо Тартальи в Венеции в 1556 году. Ответ, конечно, — 1, 2, 4, 8, 16 и 32 фунта. Для ренессансных гуманистов необходимость использования степеней числа 2 была гораздо менее очевидной, чем для интервьюеров из
Microsoft,привычных к использованию двоичной системы счисления.