Advent of Code

флоппик

promotor fidei
Команда форума
Партнер клуба
Наткнулся тут на https://adventofcode.com/2019/ и что-то залип. Я обычно не люблю все эти мета-олимпиадные задачки, но тут прям зашло по нескольким причинам:
1. Переиспользование кода между заданиями, заставляет писать тесты.
2. По этой же причине, прошлые задания автоматически тоже работают как тесты.
3. Поскольку все задачи состоят из двух частей (ко второй получаешь доступ после решения первой, вторая часть содержит дополнительные условия, но не меняет исходные) - говнокодить оказывается слишком дорого.
4. Приходится делать нормальный, здравый рефакторинг по мере движения по задачкам.
5. Не работает оверинжиниринг.

Сам решаю, и теперь и людям даю. Вдруг кому тоже понравится)
Сам себе поставил пару дополнительных ограничений: без сторонних пакетов и без стэк оверфлоу. Оказалось, что моя думалка уже подржавела: https://github.com/gorbunov/advent-of-code
 

fixxxer

К.О.
Партнер клуба
Фига себе ты заморачиваешься.
Я такие одноразовые штуки куда более примитивно пишу, даже с учетом реюза кода и небольшого рефакторинга в этих задачах. :)
 

fixxxer

К.О.
Партнер клуба
я пытался примитивно, а получилось опять вот так)
Это потому что ты язык неправильно выбрал.
Вот, смотри какое говнище! (я, правда, догадался коммитить только дойдя до day 5, хотя в принципе легко догадаться что там примерно было до)
 

fixxxer

К.О.
Партнер клуба
Впервые в жизни пригодился spaceship operator!
Ха! Я вот в этот же момент жалел, что в JS его нет.

Мне он один раз в PHP пригодился, где-то полгода назад, для usort.

@WMix, вон тот скриншот Флоппика - это весь AI. :D

UPD: А, не, вспомнил еще про spaceship, как-то написал примерно такое:
PHP:
return [self::FOO, self::BAR, self::BAZ][1 + ($a <=> $b)];
Но комитить я это не стал. :D
 
Последнее редактирование:

fixxxer

К.О.
Партнер клуба
16p2 - феерическое задротство, конечно. Типичная олимпиадная хрень. Решил, но мне сразу перестало нравиться это все.
 

fixxxer

К.О.
Партнер клуба
я сеня пораньше проснулся, вспомнил про них и чот заговнокодил все уже =)

но чот уже не то, никакого реюза кода практически нет, наоборот, прямо провоцирует говнякать.

да и как-то явно проще в разы чем 2019. ну над 10p2 и 13p2 пришлось подумать, но это скорее вокруг-олимпиадные такие штуки опять же
 

флоппик

promotor fidei
Команда форума
Партнер клуба
Там 2015 кажется был реально интересный, 19 день например.
 

WMix

герр M:)ller
Партнер клуба
Сверху