This is a library for handling different years of Advent of Code tasks in a single place with a single utils.
Note: since libraries like scipy or numpy didn't help me much, I prefer using pypy as my interpreter. Code with loads of loops usually is twice as fast as with CPython.
Using aoc.py you can:
- Create a new directory for a new year of AoC tasks (
year). - Create a new day-task with default template for the files (
day). - Run the latest day-task with given input(s) (
run). - Keep the logs of the progress (
logs). - Mark results as "good" or "bad", to further mark progress (
mark).
Since operation of changing year / day is not done often, using year and day also saves them locally
as parameters for run, logs and mark when nothing is provided.
Example flow:
./aoc.py year 2023
./aoc.py day 24
echo "Code something here."
./aoc.py run
./aoc.py mark fail
./aoc.py run
./aoc.py mark done
echo "Start of the second part."
./aoc.py run
./aoc.py mark done
echo "Done, go to another day."
./aoc.py day 25