/AoC-2022-elixir

Advent of Code 2022

Primary LanguageElixir

Advent2022

Day 1

Summing and sorting lists of integers

Day 2

Rock-Paper-Scissors simulation

Day 3

ASCII encoding, comparing sets of letters

Day 4

Using Ranges to find overlap in 1-D space

Day 5

Queue/stack operations

Day 6

"Sliding window" text analysis

Day 7

Scan over a "file system" structure, recursively calculating directory size

Day 8

2-D heightmap analysis

Day 9

Simple 2-D physics simulation for a snake-like object

Day 10

Part 1: Build a simple VM with one register and one command
Part 2: Run a program with the VM to print an array of "pixels" to the terminal

Day 11

Part 1: Move and transform integers between several lists
Part 2: Use modular arithmetic to continue transformation as integers grow infinitely

Day 12

Model a graph using :digraph and compare shortest paths among various start nodes

Day 13

Custom compare/2 function for Enum.sort/2 on nested lists

Day 14

Simple 2-D physics simulation using MapSet for collision detection

Day 15

Part 1: Graph simple functions in 2-D space, storing values in a MapSet
Part 2: Use a region quadtree to analyze overlapping 2-D shapes

Day 16

Part 1: Transform an unweighted digraph into a complete graph with edges weighted by distance and nodes weighted by value over time, in order to find an ideal path which maximizes node access value
Part 2: Each path now traverses the graph twice, exponentially increasing the number of potential paths

Day 17

Part 1: 2-D movement and collision detection for Tetris-like game
Part 2: Cycle detection to allow simulating games of extremely long length

Day 18

Part 1: Compare points in 3-D space
Part 2: Traversal of bounded space to scan a complex 3-D object for reachable surface area

Day 19

TODO

Day 20

Part 1: Index-based List operations on a medium-sized list of constant size
Part 2: Handle extremely large indexes with modular arithmetic

Day 21

Part 1: Text-to-code conversion for basic arithmetic operations
Part 2: Binary search for zero of a function

Day 22

TODO

Day 23

Problem instructions incomplete - unique solution not possible as written

Day 24

TODO

Day 25

Conversion to/from a base 5 number format where only digits 0, 1, 2 are used but each digit can be either negative or positive