Pull to refresh

Comments 65

Написал в рассылке- напишу и тут:

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

Свободный Мир ждет полноценную распределенную trustless замену скайпу, почте, ютубу, самому интернету (mesh-сети), вебу, а крутые программеры играют в «гольф». ((:
И отчего «Свободный Мир» ждёт? Свободно может сам написать замену.
На то он и досуг, нет?

Кроме того, эта так называемая «игра для задротов» очень даже разминает извилины и повышает скилл. И адреналина немного тоже есть, особенно когда видна топ-таблица в лайв-режиме перед окончанием срока приема ответов )
Топ таблицу, планируем!)
хотя бы сюда запостите что там в топе творится, интересно же )
Пока самое короткое решение 139 символов
Так в чём проблема? Создайте задание и тесты для следующего турнира «Гольфа»: напишите наименьший по размеру распределённый клиент-сервер скайпа ;-)
Увы, не годится — этот клиент будет без проверки валидности данных и его код будет невозможно поддерживать и развивать даже автору.
задание уровня вопроса на codegolf.stackexchange.com/ используется для рекламы… корпоративного стиля жизни ). Смешно, как-то. Неужели стремление поиграть в ребенка-хакатонщика настолько важнее написания серьезных вещей?
неистово плюсую! задача реально настолько простая и лобовая, что и решать особо желания нет. хотя абсолютно уверено что у меня решение бы вместилось в стандартный однострочник( <=80 символов)
Было бы интересно посмотреть на такое короткое решение
я гольфил достаточно долго и много, совершенно разнообразных задач(и прямо тут на хабре даже один раз побеждал), но эта… просто феерически неинтересная.
Давненько я не гольфил, хех… ))

Когда-то был сайт с регулярными соревнованиями, жаль, забросили его (
UFO just landed and posted this here
Решение может быть на любом языке программирования.

Предлагаю беспроигрышный вариант: написать решение на языке программирования "Domino".

Это такой скриптовый язык программирования, который правда очень ограничен в своей функциональности, синтаксис у него очень простой и содержит только 1 команду "1".

Собственно программа на этом языке выглядит примерно так:
1

Команда 1 выполняет следующее — она берет из STDIN пары чисел и строит из них наиболее длинное кольцо либо возвращает 0 если числа не закольцовываются.

Если по какой-то причине для проверки решения на этом языке у вас нет компиллятора языка «Domino» — он прилагается к решению.
Это я намекаю что некоторые языки программирования имеют синтаксис, который позволяет писать заведомо более короткие программы, чем на других языках, поэтому стоит все таки ограничить пул языков, тем же самым перлом, например.
Спасибо, за идею, но увидеть такие решения, даже на языке domino было бы очень интересно, и они имеют полное право на участие в таких конкурсах.
Стоит заранее описать условие, что никакими модулями/библиотеками пользоваться нельзя. А то можно специально создать модуль Q, который все делает, и программа получится из 5 символов 'use Q'.
Подробные общие правила Гольфа можно посмотреть, например, здесь: thospel.home.xs4all.nl/golf/rules.html. Как раз п. 5-6 про использование модулей. Самописные модули нельзя использовать никогда, модули из базовой поставки Perl — согласно правилам конкретного соревнования.

Вообще, в правилах можно много нюансов накопать, если заморочиться. Но, наверное, не так уже это всё важно, главное, чтобы было интересно участникам.
Пф. На Domino 9000 (форке языка Domino) программа вообще не содержит символов :D
Угу, чем и сломали обратную совместимость. Большинство библиотек на d9000 не портированы.
Ну так поэтому оно и форк, потому что части коммьюнити надоело подставлять костыли для обратной совместимости в этом вашем корявом domino :-)
Подскажите, пожалуйста, когда будет выложено видео со вчерашней встречи?
Привет. Видео доступно на странице трансляции, на следующей неделе оно будет выложено на нашем канале в youtube
Важно чтобы люди понимали, на продакшене мы на Perl так не пишем, только развлекаемся в свободное время такими вот штуками :)
Пример: 01 11 12 22 31 32
Пример ответа: 11 12 22 23 31

откуда там 23 в ответе?
Фишки Домино можно переворачивать
Оффтоп, но все же:
«Блог компании Mail.Ru Group», а ниже «Решения присылайте на dzirtik@gmail.com».
Вам не кажется, что это антиреклама для своих сервисов?
Этой мой древний, любимый ящик, но я им пользуюсь через мейловую мультиавторизацию image
Да не в этом дело, я все понимаю, все пользуются тем чем хотят, к чему привыкли, чем раньше пользовались т.п. Но все таки это ведь публичный корпоративный блог.
Может это был тонкий подход к рекламе мейловой мультиавторизации? Кто-нибудь обратит внимание, на gmail ящик, спросит, а тут ему про такую фичу расскажут! ;-)
Просто конкурс я запускаю не как сотрудник mail.ru, а как лидер Moscow.pm (сообщество perl-программистов). Меня знают под этим ником и с этим email. Mail.ru же, является спонсором проведения наших мероприятий и, в частности, спонсором этого соревнования.
Не указан требуемый порядок костей на выходе. Или, исходя из тестов, он может быть любым?
Любым, удовлетворяющим условию зациклености
Может, я проглядел, но как должны обрабатываться случаи, когда разных последовательностей максимальной длины больше одной?
См. тесты. Там все максимальные последовательности забиты.
А есть какие-нибудь ограничения по времени, и по размеру входных данных?
+1, и не только в плане эффективности алгоритма. В некоторых «странных» случаях (благо, в гольфе можно много чего придумать), нужно знать ограничение на размер данных, сам по себе.
По времени — нет. Входные данные ограничены одним набором домино, т.е. максимум 28 фишек
Получилось 155 символов. Многовато для гольфа?
Так я уже и сам перебил, другое дело что, по моим ощущениям, код-победитель будет иметь длину символов 70-80
Пока те варианты, что уже были присланы имеют гораздо больше символов
так оно и понятно: самые лучшие варианты все приберегают под конец ;)
причем эти 70-80 символов будет один волшебный регексп )
у меня лоховские 200 с хвостиком символов, я лох :/
переворачивать костяшки обязательно или достаточно выдать правильную последовательность?
Обязательно, последовательность должна очевидным образом являться кольцом
Будут ли тесты улучшаться?
Удалось сделать решение с багом, который не ловят ваши тесты, оно будет гораздо меньше по размеру чем решение без бага.
p.s.
таких багов у меня даже несколько.
Да, тесты будут улучшаться, с удовольствием приму пулреквесты для тестов)
Если на вход поступает — «01 12 31 32», а на выходе «12 32 31», то это будет считаться правильным ответом? У меня просто костяшки на развернуты для удобства чтения человеком.
Текущие результаты периодически обновляются тут:
docs.google.com/spreadsheets/d/1o16QFFWTfyaFLNlIpOhIithdJJIyne8JG-KIXcnzmws/edit#gid=0
Похоже пора начинать учить Ruby
Это окончательные результаты?
Хорошо бы выложить исходники всех решений на гитхаб.
Привет, ближайшее время так и сделаю, спасибо!
Sign up to leave a comment.