Detta repo är ett exempel på hur du bör strukturera ditt repo för att dina lösningar på Advent of Code ska kunna analyseras på ett korrekt sätt av den Cygnifierade varianten.
Varje dags lösningar måste placeras i en katalog med motsvarande namn; day01
, day02
, ..., day25
. Det finns ett hjälpskript du kan använda för att generera katalogstrukturen: create_directories.sh
För att vi ska kunna mäta exekveringstid behöver varje dags lösning placeras i en Dockerfile. Denna bör innehålla ett CMD som triggar start av lösningen. Vi mäter nämligen exekveringstiden genom följande.
$ time docker run -e part=part1 "${dockerImage}"
Som du ser i exemplet ovan hur exekveringstiden mäts så anges en miljövariabel part
. Varje dags problem under Advent of Code har två nivåer part1 och part2. Se exempeldagarna i detta repo för att se hur du kan lösa detta. Det viktiga för att det ska kunna mätas är just att miljövariabeln kan sättas vid uppstart av dockercontainern för part1.
$ time docker run -e part=part1 "${dockerImage}"
Och för part2.
$ time docker run -e part=part2 "${dockerImage}"
Java with Gradle
Node with yarn
Go
Python
C
R
Rust
.NET Core 5.0
Haskell
Lisp
Scheme