Змейка с кольцами

Задача

В сердце многих головоломок скрывается математика. Пожалуй, наиболее известный пример — знаменитая Игра в 15. Мы рассмотрим другую головоломку — «Змейку с кольцами». Она представляет собой проволочную зигзагообразную конструкцию в форме квадрата, шесть колец, зацепленных за основу, и удлиненный проволочный челнок (рис. 1). Ваша задача — снять с этой хитро переплетенной проволочной конструкции челнок, а затем зацепить его обратно. Как это сделать?

Рис. 1.

Рис. 1.


Подсказка 1

Головоломка не простая — даже в самом коротком решении десятки действий, — так что в уме ее вряд ли можно решить. Попробуйте сделать модель, причем начать лучше с меньшего числа колец.


Подсказка 2

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


Решение

Выясним, какие манипуляции с челноком можно делать в этой головоломке. Понятно, что челнок можно передвигать вдоль проволочной основы на участке, ограниченном кольцами. Кольца также можно передвигать вдоль проволочной петли, но тоже в ограниченной зоне. Эти действия само собой разумеющиеся. Кроме этого можно: а) вставлять конец челнока в одно или несколько колец, но без сквозного продевания; б) обводить челнок вокруг конца или петли змейки.

Покажем на серии фотографий, как снять челнок со змейки с двумя кольцами (рис. 2)

Рис. 2.

Рис. 2.

Этого можно добиться за 7 шагов из исходного состояния, показанного на первом фото:
1) вставить челнок в верхнее кольцо и обвести челнок вокруг петли змейки;
2) вставить челнок в левое кольцо и обвести челнок вокруг конца змейки;
3) извлечь челнок из левого кольца;
4) извлечь челнок из верхнего кольца;
5) вставить челнок в левое кольцо;
6) обвести челнок вокруг конца змейки;
7) извлечь челнок из змейки параллельным движением челнока вверх.

Рис. 3.

Рис. 3.

Для записи ходов удобно отметить цифрами от 1 до 7 зоны змейки, ограниченные прямыми углами (в житейском понимании угла). В начальном положении носовая часть челнока (в дальнейшем просто челнок) находится в угле №7 (рис. 3). Конечная цель — расположить челнок в угле №1 так, чтобы кольца не мешали извлечь челнок параллельным переносом вверх.

Ход — это перемещение челнока из одной зоны в другую, промежуточные движения не учитываются. Например, в рассмотренном решении для змейки с двумя кольцами сделаны три таких хода. Они показаны на рис. 4 и соответствуют фото 2, 5 и 7 с рис. 2: после этих ходов челнок оказывается в зонах 1, 2 и 1, соответственно. Научитесь делать эти движения, не обращая внимания на другие промежуточные движения челнока и записывая только порядок посещения челноком указанных зон около вершин прямых углов.

Рис. 4.

Рис. 4.

На рис. 5 показано самое короткое решение в 63 хода. Для каждого хода указан номер зоны, в которую нужно перевести челнок. Номера этих зон указаны в левом нижнем углу соответствующей схемы состояния змейки, на которой также показано положение челнока и всех колец.

Рис. 5.

Рис. 5.


Послесловие

Как же найти это, достаточно длинное, решение в 63 хода? И почему оно самое короткое?

Скажу честно, мне сходу не удалось снять челнок, хотя наша головоломка имеет внешние сходства с известной головоломкой «Меледа» (или «Китайские кольца»), алгоритм решения которой общеизвестен. Пришлось заняться исследованием этой головоломки досконально.

Из мягкой проволоки я сделал несколько более простых версий этой головоломки — с меньшим числом колец. На рис. 6 схематично изображена основная головоломка (правая схема) и все упрощенные варианты. Челнок на всех схемах укорочен.

Рис. 6.

Рис. 6.

Заметим, что «номер» головоломки (то есть ее положение в ряду на рисунке) совпадает с количеством колец в ней. Наша «Змейка» является шестым представителем бесконечного множества головоломок такой конструкции.

В исходном состоянии челнок каждого варианта головоломки находится в последнем уголке с наибольшим номером. Следуя тем же рассуждениям, что и в решении, будем называть ходом перемещение челнока из одного уголка в другой, при котором осуществляется переброс одного из колец через челнок. Для удобства дальнейшего изложения участки каждой «Змейки» занумеруем натуральными числами и назовем их уголками.

Понятно, что «Змейка-1» решается совсем легко, как говорится в одно движение. Как освободить челнок в «Змейке-2» подробно показано на рис. 2 и 4:
1) первым ходом нужно перевести челнок в уголок №1 и перебросить кольцо через челнок;
2) вторым ходом нужно перевести челнок в уголок №2 и перебросить кольцо через челнок;
3) третьим ходом нужно перевести челнок снова в уголок №1 и перебросить кольцо через челнок и освободить его от основы.

В этом случае головоломка решается в три хода. Запишем это, последовательно указывая номера уголков, в которых побывал челнок: 121. Мы обсуждаем решение «Змейки-2» так подробно, потому что оно лежит в основе решения «Змейки-3», которое состоит из 7 ходов и выглядит так: 1213121.

Отметим, что запись последовательности ходов в решении всех «Змеек» симметрична, а значит, снимать и надевать челнок можно по одному правилу.

Важным моментом в исследовании головоломки оказался следующий факт: каждая «Змейка», начиная со второй, содержит в себе предыдущую. Поэтому вырисовывается следующий «рекурсивный» алгоритм. Чтобы освободить челнок в «Змейке-4», его сначала переместим в четвертый уголок. Это равносильно исходному положению челнока в «Змейке-3», то есть после этого необходимо выполнить ходы 1213121. Затем перекинем кольцо через челнок в уголке №4 — и снова получим «Змейку-3», которая решается выполнением такой же серии ходов: 1213121. Таким образом, запись последовательности ходов решения «Змейки-4» содержит 15 ходов и выглядит так: 121312141213121.

Учитывая найденные закономерности, сформулируем общее правило для записи решения «Змейки» с n кольцами: запишем последовательность ходов для решения «Змейки» с (n − 1) кольцом, справа припишем число n, и опять повторим последовательность ходов для решения «Змейки» с (n − 1) кольцом.

Число ходов an в решении «Змейки-n» при этом определяется следующей рекуррентной формулой an = 2an−1 + 1, a1 = 1. Методом математической индукции докажем, что an = 2n − 1. В самом деле, база индукции выполняется: a1 = 1 = 21 − 1. Покажем что an+1 = 2n+1 − 1. Используя рекуррентную формулу для an, получим, что an+1 = 2an + 1 = 2(2n − 1) + 1 = 2n+1 − 2 + 1 = 2n+1 − 1. Формула доказана.

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

Можно поставить точку: головоломка решена, разработан алгоритм для решения «Змеек» с любым числом колец. Но с головоломкой не хочется расставаться потому, что у нее много любопытных свойств. Например:

1) Последовательность ходов решения можно задать с помощью двоичных чисел. Действительно, если номер каждого хода представить в двоичном виде, и указать номер первой справа единицы, то получим как раз запись очередности ходов решения головоломки. Проиллюстрируем это на примере «Змейки-4», которая решается в пятнадцать ходов:

Номер хода Двоичное представление номера хода Номер первой справа единицы в двоичном представлении
1 0001 1
2 0010 2
3 0011 1
4 0100 3
5 0101 1
6 0110 2
7 0111 1
8 1000 4
9 1001 1
10 1010 2
11 1011 1
12 1100 3
13 1101 1
14 1110 2
15 1111 1

В последнем столбце этой таблицы появилась последовательность ходов для решения «Змейки-4».

2. Совершенно очевидно, что можно конструировать и решать «Змейки» с большим количеством колец, но надо помнить при этом, что число ходов от добавления одного кольца практически удваивается. Поэтому существует номер N, начиная с которого время, необходимое для на решения «Змейки-N», будет уже за всеми разумными пределами.

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

3. Еще одно свойство покажем на примере «Змейки-6»: очевидно, что переброс кольца через челнок чаще происходит в уголке №1, реже — в уголке №2, еще реже — в уголке №3 и т. д. В уголке №6 это происходит лишь однажды. Если посчитать количество операций для каждого уголка, то получим последовательность 25, 24, 23, 22, 21, 20. Поэтому общее количество ходов можно найти по-другому — как сумму шести членов этой геометрической прогрессии. Убедитесь, что она равна 63. Ясно, что это свойство можно обобщить для «Змейки» с любым числом колец.

Любители и знатоки головоломок, безусловно, обнаружат связь «Змейки» с широко известной, овеянной легендами головоломкой французского математика Эдуарда Люка Ханойская башня.

Рис. 7

Рис. 7 Хайноская башня с 8 дисками. Фото с сайта ru.wikipedia.org

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


3
Показать комментарии (3)
Свернуть комментарии (3)

  • Юрий Фёдоров  | 25.05.2025 | 06:19 Ответить
    Вот принципиально ничего помогающего решить читать не буду, пока не сделаю эту штуку сам.
    Благо фотка реальная игрушка не искажена ракурсом.
    )
    Вот только вопрос с кольцом на челноке: оно как все?
    Оно не должно пролазить сквозь кольца лабиринта?
    Ответить
    • Nik > Юрий Фёдоров | 25.05.2025 | 07:09 Ответить
      Вы правы, Юрий! Именно по такой путь пошел я. Дело в том, что друзья, подарившие мне эту "Змейку", предварительно повозившись с ней самостоятельно и поняли, что это «крепкий орешек», с нетерпением и хитрецой в глазах ждали, освобожу ли я челнок от основной конструкции. Но головоломка «сопротивлялась», и в этот вечер я так и не смог с ней справиться. Чтобы в кругу знакомых не подорвать свой авторитет, пришлось заняться исследованием головоломки, и в первую очередь я легко сделал из мягкой проволоки модель головоломки. Причем начинал с ее частных случаев, с двух колец, потом с трех, и т.д., и головоломка покорилась. Результаты моего исследования в послесловии. Надеюсь, будут интересны.

      Что касается кольца на челноке, то оно не играет ни какой роли, можно просто концы проволоки, из которой делается челнок просто скрутить. Но мой совет, для исследования, лучше и не скручивать, оставить концы не сомкнутыми, потому что часто, запутавшись при поиске решения, легче будет начинать сначала, извлекая челнок как раз через несомкнутые его концы. Удачи!
      Ответить
  • Joehn  | 30.05.2025 | 08:50 Ответить
    "Понятно, что челнок можно передвигать вдоль проволочной основы на участке, ограниченном кольцами. Кольца также можно передвигать вдоль проволочной петли, но тоже в ограниченной зоне. Эти действия само собой разумеющиеся. Кроме этого можно: а) вставлять конец челнока в одно или несколько колец, но без сквозного продевания; б) обводить челнок вокруг конца или петли змейки."

    Что мешало это написать в условии?
    Ответить
Написать комментарий
Элементы

© 2005–2025 «Элементы»