Parent repository for all my Advent of Code solutions. I started playing Advent of Code for fun in 2018 and more competitively in 2019. In 2019 I got 13th on the global leaderboard, in 2020 I got 9th, and in 2021 I got 21st. I'll try to keep this repository relatively up-to-date, but no promises!
Unless otherwise stated, all my solutions here are pretty much1 the exact code I used to solve. This means the code quality is... rather poor. When I'm going for leaderboard, I'm trying to solve as quickly as possible, which means one letter variable names, reusing variables, horrendous Python one-liners, operator overloading to switch addition and multiplication, and probably a bunch of other bad practices. Yes, I can write good code (at least, I'd like to think I can).
Recently2 I've also started recording my solves, if you're interested I post them on my YouTube ~right after I finish solving each day.
It's $CURRENT_YEAR! More coming soon?
For now I've been copying aoc_tools.py
into every directory because relative imports don't work from scripts and I'm too lazy to do the proper thing (and I forgot I could just add ..
or something to the path). I haven't really been using it anyways, due to a combination of not needing to and not remembering what exactly I put in it - I'll probably have to practice a good bit with whatever extras I write before next year to actually feel comfortable using it.
Solutions for days 20 and onwards are currently missing because I went home for Christmas and didn't have my computer with me (they're somewhere on my laptop, I'll add them eventually).
(TODO: I'll add some more description here when I get time)
(TODO: I'll add some more description here when I get time)
I'm not really sure where the code for this year went, but if I find it I'll add it to this repo.
(TODO: I'll add some more description here when I get time)
I think I up-solved 2017 at some point in 2020 as practice? I'm not really sure but I stumbled onto my code in a folder so I decided I'd throw it into this repo.
Footnotes
-
I pretty commonly edit the code as I'm solving for part 2, or do things one-off in the Python terminal, so there's some amount of "reconstructing" the solve code after the fact, but this is pretty minimal edits (and I certainly don't make any code quality improvements when I do this). ↩
-
Okay, so technically I streamed most days in 2020, but then starting in 2021 Eric Wastl began asking people to not stream their solving if they expected to regularly make it onto the leaderboard, so I switched to recording for 2021, but ended up not posting most of the videos because I never got around to editing them. This year I'll hopefully be more consistent with the uploads. ↩