Всех с пятницей! По итогам недавно прошедшей встречи Moscow.pm я хочу предложить всем желающим посоревноваться в решении задачки.
Гольф (англ. golf) — спортивная игра, в которой отдельные участники или команды соревнуются, загоняя маленький мячик в специальные лунки ударами клюшек, пытаясь пройти отведённую дистанцию за минимальное число ударов.
Wikipedia
Игра, в которую я хочу предложить вам поиграть, также называется Golf. Суть ее в том, чтобы решить поставленную задачу за минимальное количество символов.
Задача «Домино»: на Github
Домино́ — игра, в процессе которой выстраивается цепь костяшек («костей», «камней»), соприкасающихся половинками с одинаковым числом очков. Таким образом каждая костяшка характеризуется парой чисел, не важно в каком порядке.
Wikipedia
Задача. Найти максимально длинное кольцо, которое можно составить из списка предложенных вам костяшек или вывести 0, если их нельзя закольцевать.
Входные данные: Строка из пар чисел от 0 до 6, разделенных пробелом. Каждая пара — одна костяшка.
Пример: 01 11 12 22 31 32
Данные подаются на STDIN: cat data | golf.pl
Пример ответа: 11 12 22 23 31
Проверить работоспособность решения можно приложенным набором тестов, пока только для perl (присылайте свои пул-реквесты):
prove test.pl
Размер решения можно посчитать с помощью скрипта golfcount.pl:
perl golfcount.pl golf.pl
Решения присылайте на dzirtik@gmail.com с темой «Golf 1410». Крайний срок приема решений 31 октября 2014 23.59. Решение может быть на любом языке программирования. Для лучших решений у нас заготовлены призы.
Автор: Dzirtik