/advent-of-code

Mirrored from https://gitlab.com/NielsRenard/adventofcode

Primary LanguageHaskellGNU Lesser General Public License v3.0LGPL-3.0

What is this repo

These are my Advent Of Code solutions. A series of daily programming challenges that runs in December.
I did 2017 and 2018 in clojure, 2016, 2019 and 2020 in Haskell, and 2021 and 2022 in Rust. Huge props to AOC creator Eric Wastl. Not only has it been a ton of fun, it also (drastically) improved my programming and problem solving skills.

Advent of Code ?

adventofcode.com/about

"Advent of Code is an Advent calendar of small programming puzzles for a variety of skill sets and skill levels that can be solved in any programming language you like. People use them as a speed contest, interview prep, company training, university coursework, practice problems, or to challenge each other."

Some visualizations

finished

2022 --- Day 22: --- Monkey Map ---

"As you walk, the monkeys explain that the grove is protected by a force field. To pass through the force field, you have to enter a password; doing so involves tracing a specific path on a strangely-shaped board. At least, you're pretty sure that's what you have to do; the elephants aren't exactly fluent in monkey." mp4

2022 --- Day 16: --- Proboscidea Volcanium ---

"...this isn't just a cave, it's a volcano!

You need to get the elephants out of here, quickly." valves

2022 --- Day 14: Regolith Reservoir ---

"As you begin to make your way deeper underground, you feel the ground rumble for a moment. Sand begins pouring into the cave! If you don't quickly figure out where the sand is going, you could quickly become trapped!" mp4

2022 --- Day 9: Rope Bridge ---

"This rope bridge creaks as you walk along it. You aren't sure how old it is, or whether it can even support your weight. It seems to support the Elves just fine, though. The bridge spans a gorge which was carved out by the massive river far below you. You step carefully; as you do, the ropes stretch and twist. You decide to distract yourself by modeling rope physics; maybe you can even figure out where not to step." rope bridge

2021 --- Day 11: Dumbo Octopus ---

"You enter a large cavern full of rare bioluminescent dumbo octopuses! They seem to not like the Christmas lights on your submarine, so you turn them off for now. There are 100 octopuses arranged neatly in a 10 by 10 grid. Each octopus slowly gains energy over time and flashes brightly for a moment when its energy is full. Although your lights are off, maybe you could navigate through the cave without disturbing the octopuses if you could predict when the flashes of light will happen." octopus

2021 --- Day 5: Hydrothermal Venture ---

"You come across a field of hydrothermal vents on the ocean floor! These vents constantly produce large, opaque clouds, so it would be best to avoid them if possible." hydrothermal vents

2021 --- Day 20: Trench Map ---

"With the scanners fully deployed, you turn their attention to mapping the floor of the ocean trench. Through advances in imaging technology, the images being operated on here are infinite in size. Truly incredible - now the small details are really starting to come through." image enhancing

2021 --- Day 12: Passage Pathing ---

With your submarine's subterranean subsystems subsisting suboptimally, the only way you're getting out of this cave anytime soon is by finding a path yourself. Not just a path - the only way to know if you've found the best path is to find all of them. cave pathing

2021 --- Day 25: Sea Cucumber ---

"Sea cucumbers? Yeah, they're probably hunting for food. But don't worry, they're predictable critters: they move in perfectly straight lines, only moving forward when there's space to do so. They're actually quite polite!" You explain that you'd like to predict when you could land your submarine. sea cucumbers