Вы можете быстро прийти к выводу, что использовали неверное предположение. Когда вы взвешиваете таблетки только из одной баночки, есть только два возможных исхода — это могут быть или нормальные, или испорченные таблетки. Допустим, вы решили взвесить десять таблеток из баночки номер три, и весы показали 90 граммов — вам повезло. Очевидно, что таблетки в этой баночке испорчены, и вам достался счастливый билет. Проблема в том, что вам могла попасться и любая из оставшихся четырех баночек. Тогда, взвесив десять таблеток, вы узнаете, что у них нормальный вес — 100 граммов. И у вас не будет ни малейшего представления о том, в какой из остальных четырех баночек испорченные таблетки. И так произойдет в любом случае, если вы будете взвешивать таблетки только из одной баночки. Это сильный довод в пользу того, что для правильного ответа на задачу нужно взвешивать таблетки из нескольких баночек.
Третье предположение — это основная трудность для многих кандидатов на работу в
Это всего один бит информации, а каждый программист знает, что невозможно идентифицировать один из пяти объектов при помощи единственного бита информации. Для этого нужно три бита.
Этот анализ, конечно, бесполезен. Он основан на втором предположении. Вы в реальности получаете ответ «да» или «нет» только если все таблетки идентичны, то есть взяты из одной и той же баночки.
Предварительное обдумывание головоломки часто приводит к выводу, что ее невозможно решить. Неудивительно: хорошая головоломка должна заставлять вас биться головой о стену. Но если посмотреть с другой стороны, невозможность решения может вам помочь. Если данное предположение приводит к заключению; что головоломку невозможно решить, то что-то неверно или в самом предположении, или в логике ваших рассуждений.
Один из лучших способов найти решение — принять предположение номер три, обдумать его и понять, каким образом оно ведет к невозможности решения задачи. Это приведет вас к заключению, что третье предположение необходимо отвергнуть. Каким-то образом вы должны получить в результате единственного взвешивания более информативный ответ, чем просто «да» или «нет». Теперь задачу следует переформулировать так: «Каким образом можно провести взвешивание так, чтобы получить достаточно информации о каждой из пяти баночек и найти испорченную?» В зависимости от вашей подготовки и опыта подобная задача может оказаться для вас и простой, и сложной. Но для каждого из нас основной трудностью будет суметь так переформулировать проблему, как это сделано выше.
Логические головоломки — это не единственный способ протестировать навыки переформулирования проблем. Сколько бензозаправочных станций в Лос-Анджелесе? Столкнувшись с подобным вопросом во время интервью, вы должны в первую очередь решить, какой на него ожидается ответ. Некоторые из возможных реакций:
—
Только после того, как вы отвергли первые три предположения и остановились на четвертом, вы сможете начать поиск того ответа, на который рассчитывает интервьюер. «Не слишком сообразительные кандидаты начинают волноваться и расстраиваться, — говорит Джон Сполски. — Они просто уставятся на вас так, будто вы с Луны свалились. Вам нужно помочь им и подсказать. „Ну если бы вам нужно было построить новый город размером с Лос-Анджелес, сколько бензозаправок вам бы тогда понадобилось?“ Вы можете дать небольшие подсказки. „Сколько времени уходит на то, чтобы заправить полный бак бензином?“ И все же если кандидат не очень умен, вам придется подталкивать его к правильному ходу рассуждений, пока он сидит и тупо смотрит на вас, рассчитывая на вашу помощь. Такие люди не умеют решать проблемы, и мы не хотим, чтобы они у нас работали».[106]