У Тойленді потяги завжди зайняті: вони розвозять скарби по всьому місту, від блискучих кульок до рідкісних будівельних кубиків. Колії, якими вони їздять, зроблені з різнобарвних деталей у формі доміно, і на кожній позначено два числа. Щоб потяги рухалися, доміно мають утворити бездоганний ланцюжок, у якому числа збігаються.
Сьогодні термінова доставка рідкісних іграшок призупинена. Нам передали набір деталей колії для огляду. Якщо з них удасться скласти безперервний ланцюжок, потяг вирушить у дорогу й подарує усмішки всьому Тойленду. Якщо ж ні, набір відкладуть, а натомість спробують інший.
Іграшки сподіваються, що саме ми розгадаємо цю головоломку. Чи зʼєднають доміно колії й змусять потяг рушити, чи цей набір залишиться позаду?
Складіть ланцюг із доміно.
Обчисліть спосіб упорядкувати заданий набір кісточок доміно так, щоб вони утворили правильний ланцюг доміно. У ланцюгу крапки на одній половині кісточки мають збігатися з крапками на сусідній половині суміжної кісточки. Крім того, крапки на половинах кісточок без сусідів (першої та останньої кісточки) мають збігатися між собою.
Наприклад, для кісточок [2|1], [2|3] і [1|3] потрібно обчислити щось таке:
[1|2] [2|3] [3|1], або [3|2] [2|1] [1|3], або [1|3] [3|2] [2|1] тощо, де перше й останнє числа однакові.
Для кісточок [1|2], [4|1] і [2|3] отриманий ланцюг неправильний: перше й останнє числа в [4|1] [1|2] [2|3] не однакові.
4 != 3
Деякі тестові випадки можуть використовувати повторювані кісточки в розвʼязку ланцюга, тож вважайте, що використовується кілька наборів доміно.
Зареєструйтеся на Exercism, щоб вивчати й опановувати ARM64 Assembly, а також 78 вправ та справжнє наставництво від людей, і все це безкоштовно.