Solutions for Advent of Code
Part 1 was easily solved by Dijkstras (using heapq). Tricky part was to find the way to serialize the queue items for the heappush and heappop to behave as required. Part 2 was incredible hard to figure out, and I could not do it by myself. From the subreddit, it is hinted that a traditional set of visited nodes to determine algorithm exit would not work. After some laboration and readin some hints, I managed to find a solution where the code keeps tracks using a defaultdict. |
||
|---|---|---|
| 2015-elixir | ||
| 2015-elixir-2 | ||
| 2015-python | ||
| 2016-python | ||
| 2016-python2 | ||
| 2017-python | ||
| 2018-elixir | ||
| 2018-python | ||
| 2019-elixir | ||
| 2020-elixir | ||
| 2020-python | ||
| 2021-elixir | ||
| 2021-python | ||
| 2022-elixir | ||
| 2023-python | ||
| 2024-python | ||
| leaderboard | ||
| .gitignore | ||
| fetch-calendar | ||
| fetch-input | ||
| README.md | ||
Advent of Code 2015–
Here all solved puzzles for Advent of Code are kept for reference. Most solutions are written in Python, but there are also solutions written in Elixir.
- Initial runs from 2016–2020 are squashed in version control, so the original thoughts/rants about the solution are forgotten for future generations.
- 2021 onwards, each solution will have a separate commit. This also includes revisiting old events.
Where are the puzzle input files?
For many years, this repository had all puzzle inputs under version control. They are not anymore, although the scripts asumed they are downloaded and stored locally in a subdirectory, which is ignored by version control.
The reasons:
- Neither you or me do have permission to reproduce or redistribute them, they are not released under public domain or MIT/BSD/GPL or any other license.
- The author behind advent of code have kindly asked us who attend Advent of Code to not release them, since publiced puzzle inputs cen be used to copy the site and steal the AoC creator's work.
Sources: