/aoc

Advent of Code

Primary LanguageJupyter NotebookMIT LicenseMIT

🗑️ This is my 🎄🎄🎄 Advent of Code repository.
----------------------------------------------

(Note: At the moment, the code is from 2022, I may move the previous year's code in here at some later point.)

See: https://adventofcode.com/

Nowadays I'm doing the AOC in Jupyterlab with 🐍 Python and
with as little mental load as possible.

Other people might publish polished solutions, if you're looking 
for those, try somewhere else. I may also import libraries and not
give you a requirements.txt file to install them. If this happens,
it will be fairly obvious what they are, if you can't google them,
ask me.

For those who know Python but don't work with 📓 Notebooks, it's
cell based, you can run the cells out of order and rerun them.
There's a number on the left of each cell of the last run, which
let's you kind-of guess the order in which I last used then.

These here will poorly named variables/functions and code that is
only as efficient as needed.

You will find a lot of list comprehensions - I love those -
and quite a few generators/iterators. 

Also I like to think ahead and work towards part 2 of the question by
writing re-usable code. Often I still cut&paste the code cells for part 2,
just to keep them unchanged in the notebook.

Once a day's job is finished and I have my stars, I drop the pencil 
and leave the notebooks are they are. 

It's tempting to make them beautiful or to rename things properly, 
but I will not do it, at least not in 2022.

So depending on your definition it will be either very *bad* code or
*good* code (because it is throw-away code that did the job quickly.)

Since I'm very busy I will stop playing once the daily time needed to
solve them exceeds 45 minutes by a lot. Usually this happens by the 
middle of the event, when suddenly I have to google for known math 
problems without the riddles aren't solvable.

You've been warned, enter this 🗑️ pile of discarded Notebooks at your own risk.