Solutions for Advent of Code
Find a file
Anders Englöf Ytterström 90d5ab203d Solve 2022 day 7 pt 1-2
Funny that I did not mention the problem with
recurring directory names in the first run of this
puzzle in Elixir, back in 2022 and bb708a5e58.

Most likely, the insight flew over my head that
time.

This time, I realized I could just add the size to
the size of each parent. I struggled to find a graph
traversal for it, until I realized I did not need
the graph.

The key rewrite was this:

    for p in path:
        fs[p] += size
    fs["/"] += size

... to this:

    p = "/"
    fs[p] += size
    for dir_name in path:
        p += f"/{dir_name}"
        fs[p] += size

This solved my issues for 3 hours by acknowledge that

- a directory name "a" can accour on multiple places,
  example: /a, /b/a, /c/a
- a directory name "a" can have a parent directory named
  "a", example: /a/b/a, /a/c/d/a

And as always, example input is the devil. Look at
the reak input as soon as possible.
2025-11-30 19:17:15 +01:00
2015-elixir Solve day 5-6 2015 2022-11-25 12:03:57 +01:00
2015-elixir-2 Solve 2015:7 "Some Assembly Required" 2023-11-20 20:54:43 +01:00
2015-python Add the initial 2015 days in Python 2023-12-19 23:55:47 +01:00
2016-python Add solutions from AOC 2016-2020 2021-11-01 16:45:03 +01:00
2016-python2 Solve 2016:22 p2 "Grid Computing" 2024-12-12 13:53:43 +01:00
2017-python Solve 2017:25 "The Halting Problem" 2025-05-06 23:53:56 +02:00
2018-elixir Add solutions from AOC 2016-2020 2021-11-01 16:45:03 +01:00
2018-python Add solutions from AOC 2016-2020 2021-11-01 16:45:03 +01:00
2019-elixir Add solutions from AOC 2016-2020 2021-11-01 16:45:03 +01:00
2020-elixir Add solutions from AOC 2016-2020 2021-11-01 16:45:03 +01:00
2020-python Add solutions from AOC 2016-2020 2021-11-01 16:45:03 +01:00
2021-elixir 🔧 Setup Advent of Code 2021 2021-10-22 17:17:55 +02:00
2021-python Solve 2021:14 "Extended Polymerization" part 2 2021-12-14 08:56:57 +01:00
2022-elixir Add WIP for 2022:11 "Monkey in the Middle" 2023-11-20 20:53:58 +01:00
2022-python Solve 2022 day 7 pt 1-2 2025-11-30 19:17:15 +01:00
2023-python 2023 solutions (#6) 2023-12-18 13:08:28 +01:00
2024-python Solve 2024:24 pt2 "Code Chronicle" 2025-01-05 00:06:18 +01:00
leaderboard Run code in container 2024-12-03 01:41:40 +01:00
.gitignore Ignore .ropeproject 2023-12-15 17:22:09 +01:00
fetch-calendar Add scripts to fetch single or calendar inputs 2023-12-09 21:25:35 +01:00
fetch-input Add scripts to fetch single or calendar inputs 2023-12-09 21:25:35 +01:00
README.md Update README.md 2024-11-29 11:58:57 +01:00

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 20162020 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: