AoC 2022 Day 22: Wonderator

Source: Monkey Map

Part 1

Given a map and a series of instructions formatted as distance + turn (L or R), find the final position. Any time you would walk off the edge of the map, wrap to the opposite edge.

read more...


AoC 2022 Day 20: Deencryptinator

Source: Grove Positioning System

Part 1

Given a list of numbers mix them by moving each number forward/backward in the list based on it’s value. For example, in 4, -2, 5, 6, 7, 8, 9 moving the -2 will result in 4, 5, 6, 7, 8, -2, 9. Each number should be moved exactly once in the original order they appeared in the list.

read more...


AoC 2022 Day 19: Blueprintinator

Source: Not Enough Minerals

Part 1

Given a series of given a series of blueprints, each of which gives instructions for how to build a single robot from a collection of materials that in turn will produce one of a given material per turn, determine the best order of builds to maximize your geode (the most valuable material) production for each blueprint given a time limit of 24 minutes.

read more...


AoC 2022 Day 17: Tetrisinator

Source: Pyroclastic Flow

Part 1

Simulate Tetris on a 7 wide board with a given (infinitely repeated) series of left and right inputs to be applied on each frame before dropping the block and a given (infinitely repeated) set of blocks. Once 2022 blocks have been dropped, what is the total height of the placed blocks?

read more...


AoC 2022 Day 16: Pressurinator

Source: Proboscidea Volcanium

Part 1

Given a graph of nodes, some of which have a pressure (per tick output value) and an agent that can move through the graph and activate specific nodes (so that they output their per tick value every future tick), what is the maximum total output possible in 30 steps?

read more...


AoC 2022 Day 13: List Parsinator

Source: Distress Signal

Part 1

Given pairs of Signals (where a Signal is a nested list ;example: [[1],[2,3,4]]), count how many pairs are ‘in order’.

One Signal is less than the other if:

  • Both are an integer and the first is less than the second
  • Both are a list and the first value is less than the second
    • If the first values are the same, compare the second
    • If the first has fewer elements, it is treated as less than the second
  • When comparing an integer and a list, wrap the integer as a single element list and compare them

read more...