Найдите отсутствующее значение.
Наоки Инаба, пожалуй, самый плодовитый и блестящий разработчик дедуктивных головоломок из всех современных специалистов в этой области, хотя о его работе мало кто знает за пределами родины. Благодаря таким людям, как Инаба, а также компании Nikol в Японии сформировалось, возможно, самое активное сообщество любителей головоломок в мире.
По всей вероятности, вы не слышали о Nikoli, но наверняка знаете о судоку, которые впервые появились в журнале Puzzle Communication Nikoli в середине 1980-х годов. Словом «судоку» в Nikoli назвали головоломку Number Place («Место числа»), опубликованную в американском журнале Dell Pencil Puzzles and Word Games. Если на протяжении прошедшего десятилетия вы жили в пещере, позвольте сообщить, что судоку представляет собой квадрат 9 × 9 клеток с несколькими указанными цифрами. Игрок должен заполнить пустые клетки так, чтобы каждая цифра встречалась в каждой строке, в каждом столбце и в каждом малом квадрате 3 × 3 только один раз. Судоку не пользовались особой популярностью до 1986 года, когда в Nikoli решили размещать заданные цифры симметрично, подобно буквам в кроссворде. Небольшое изменение оказалось эффективным, и головоломка обрела успех в Японии. В конце 2004 года судоку впервые появились на Западе, после того как отставному судье Уэйну Гулду, проводившему отпуск в Японии, попалась на глаза эта головоломка. Гулд разработал компьютерную программу для создания таблиц судоку и продал ее британским газетам, в том числе лондонской Times. Через несколько месяцев после первой публикации судоку в Times головоломку начали ежедневно публиковать многие периодические издания во всем мире.
Есть доля иронии в том, что компания Nikoli обрела известность благодаря головоломке, которую не создавала. Однако с момента выхода ежеквартального журнала Nikoli в нем было опубликовано около 600 новых видов головоломок. Nikoli специализируется на матричных головоломках типа судоку, в которых необходимо заполнять матрицу, обычно в форме квадрата. Внимание к деталям – один из факторов, обеспечивающих к ним интерес: в красивых квадратах судоку элементы расположены симметрично, но даже если симметрии нет, судоку все равно создается с большим вниманием к внешнему виду. Правила всегда очень просты, а постепенное заполнение клеток доставляет огромное удовольствие людям вроде меня и оказывает такое же терапевтическое воздействие, как раскрашивание рисунков. Чтобы пробудить в вас интерес к подобным головоломкам, я выбрал четыре примера.
Тираж журнала, публикуемого Nikoli, – около 50 тысяч экземпляров. Среди его читателей не только любители решать головоломки, но и их создатели, присылающие в редакцию несколько сотен предложений в год. Следующая головоломка – «Прямоугольники» (Shikaku – «разделить на квадраты»); ее идея принадлежит 21-летнему студенту по имени Ёсинао Анпуку. Впоследствии он начал работать в Nikoli и сейчас занимает там должность исполнительного редакционного директора.
В головоломке «Прямоугольники» нужно разделить матрицу на прямоугольные и квадратные блоки. Числа в ячейках матрицы определяют площадь блока, содержащего это число (оно эквивалентно количеству ячеек в блоке).
Разберем пример. На представленном ниже рисунке A – исходная матрица, а C – решение, в котором отмечены все прямоугольные и квадратные блоки. Вначале необходимо найти наибольшее число в исходной матрице, поскольку зачастую формы и положение блоков с этим числом будут иметь определенные ограничения. Самое большое число в данной головоломке – 9, а единственно возможные блоки для числа 9 – прямоугольник 9 × 1 или квадрат 3 × 3. В этой матрице нет горизонтальных или вертикальных последовательностей из девяти пустых ячеек, поэтому блок числа 9 должен быть квадратом и может располагаться только в одном положении, показанном на рисунке B. Аналогично единственный прямоугольный блок из восьми ячеек, который содержит число 8, а также единственный прямоугольный блок из шести ячеек, содержащий число 6, должны находиться на отмеченных местах. Как только будут отчерчены некоторые блоки, вы сможете определить позиции других блоков.
А теперь ваша очередь.
Компанию Nikoli основал Маки Кадзи – страстный любитель скачек, поэтому он назвал ее в честь подготовленного в Ирландии жеребца, который, будучи фаворитом, проиграл на скачках в Эпсоме в 1980 году. Впервые я встретился с Кадзи в 2008-м, в офисе Nikoli в Токио. Он рассказал мне о двух своих хобби – коллекционировании канцелярских резинок и фотографировании номерных знаков, на которых цифры соответствуют строкам таблицы умножения, например: 23 06 (2 × 3 = 6) и 77 49 (7 × 7 = 49). Во время следующей нашей встречи в 2016 году Кадзи сообщил, что его коллекция канцелярских резинок продолжает расти и пополнилась новыми интересными экземплярами из Таиланда и Венгрии. Что касается фотографий номерных знаков, у него уже набралось 85 процентов изображений строк из таблицы умножения от 1 до 9. «Я близок к завершению, – сообщил мне Кадзи, – у меня есть правило: не искать такие номерные знаки намеренно. Я фотографирую только те, которые попадаются случайно».
Цель головоломки «Китайская стена» (от англ. slitherlink – скользящие линии) – соединить точки горизонтальными и (или) вертикальными линиями так, чтобы получился один замкнутый контур. Числа в ячейках обозначают количество линий, которые могут быть расположены вокруг соответствующего числа. Так, вокруг ячейки с числом 1 должна проходить только одна линия, вокруг ячейки с числом 2 – две и т. д. Вокруг пустых ячеек можно проводить любое количество линий. Однако полученный контур не должен пересекаться и разветвляться.
На представленном ниже рисунке A самые очевидные варианты начала – это ячейки с числом 0, поскольку вокруг них не будет линий. Отметьте их маленькими крестиками, чтобы видеть, что там не должно быть никаких линий, как показано на рисунке B. Один из крестиков расположен возле ячейки с цифрой 3, что оставляет место только для трех линий вокруг нее. Нарисуйте их. На рисунке C мы можем продолжить контур вверх, причем существует лишь один способ обвести ячейку с цифрой 2 двумя линиями. Обратите внимание: на рисунке B я отметил также точки a, b, c и d в тех местах, где потенциальные линии могут выйти из точки между ячейками с цифрой 3. Контурная линия должна пройти через эту точку, так как в случае, когда ячейку окружают три линии, они проходят через четыре точки. Контур проводится либо через a, либо через b, либо через c, либо через d, поскольку, если он проходит и через a, и через b или через c и d, образуется ответвление, а это запрещено условием задачи. Во всех случаях контурная линия проводится через две другие стороны обеих ячеек с цифрой 3, поэтому мы можем отметить их на рисунке С. Решение задачи представлено на рисунке D.
Следующую головоломку решите самостоятельно. Помните, что единственный контур должен быть замкнут без пересечений и ответвлений. Существует лишь одно решение, и оно может быть найдено только с помощью логики.
«Китайская стена» – одна из любимых головоломок Маки Кадзи (и моих), разработанных компанией Nikoli. Мне нравится медленно выстраивать контур, змейкой постепенно обвивающий всю схему. Его построение приносит большое удовольствие.
Компания Nikoli постоянно разрабатывает новые головоломки. Задача «Адский гольф», один из ее последних продуктов, создана под влиянием игры в гольф, и в ней учтено, что по мере приближения к лунке удары становятся короче.
В этой игре вы должны загнать мяч, отмеченный кружком, в соответствующую лунку, обозначенную буквой H. Число в кружке – это расстояние (количество ячеек), которое должен пройти мяч после первого удара. Если в результате первого удара мяч не попадет точно в квадрат H, второй удар должен быть на одну ячейку короче. Если и после второго удара мяч не достигнет цели, третий должен быть на одну ячейку короче и т. д. Таким образом, траектория движения мяча, обозначенного цифрой 3, будет состоять либо в точности из трех квадратов, либо из трех квадратов, за которыми последуют еще два квадрата, либо из трех квадратов, за которыми последуют еще два квадрата, а затем еще один квадрат. Мячи могут передвигаться только по горизонтали или по вертикали. Каждый новый удар делается либо в том же направлении, что и предыдущий, либо в другом.
Пути мячей не могут пересекаться. Кроме того, нужно попасть в лунку после каждого удара. Два мяча не должны попадать в одну лунку. Затененные области обозначают песчаные ловушки (бункеры). Мяч, отправленный в лунку коротким ударом, пересекает бункер, но не должен туда упасть.
В приведенном примере A – исходная схема. Первым делом нужно определить, какие мячи однозначно попадут в цель. Например, мяч с цифрой 3 в верхнем левом углу должен пройти три квадрата после первого удара. Однако он не может передвигаться по горизонтали, иначе угодит в бункер; следовательно, его нужно отправить по вертикали вниз, как показано на рисунке В. Аналогично мяч с цифрой 3, находящийся рядом с первым мячом по диагонали, тоже угодит в бункер, если отправить его в горизонтальном направлении, поэтому его нужно направить вниз. Каждый из этих двух мячей достигнет лунки после удара на два квадрата. Таким образом, мяч из верхнего левого угла следует и далее перемещать вниз, поскольку траектории движения мячей не должны пересекаться, после чего он попадает в лунку. Другой мяч должен продолжить движение по горизонтали, так как в случае передвижения вниз не найдется лунки, куда он мог бы попасть после перемещения на один квадрат. Стало быть, этот мяч тоже найдет свою лунку. Решение задачи представлено на рисунке С.