| Day | Title | Part 1 | Part 2 | Link |
|---|---|---|---|---|
| Day 1 | Historian Hysteria | Given two lists of numbers, pair smallest-to-smallest and sum the absolute differences between pairs. | For each number in left list, multiply it by its frequency in right list and sum all products. | 🌐 |
| Day 2 | Red-Nosed Reports | Count sequences where numbers are strictly increasing/decreasing by 1-3. | Same as part 1, but allow removing one number to make sequence valid. | 🌐 |
| Day 3 | Mull It Over | Find valid mul(X,Y) instructions in corrupted text and sum their products. |
Same but respect do()/don't() instructions that enable/disable multiplication operations. |
🌐 |
| Day 4 | Ceres Search | Count occurrences of XMAS in a grid (horizontal, vertical, diagonal, forwards/backwards). |
Count occurrences of X-shaped MAS patterns (two MAS strings forming an X shape). |
🌐 |
| Day 5 | Print Queue | Given a list of page ordering rules (X|Y means X must come before Y) and sequences of page numbers, find correctly ordered sequences and sum their middle numbers. |
Take incorrectly ordered sequences, reorder them according to rules, and sum their middle numbers. | 🌐 |
| Day 6 | Guard Gallivant | Track path of guard following simple movement rules (turn right if blocked, else move forward) and count distinct positions visited before leaving map. | Find number of possible positions where placing an obstacle would trap guard in infinite loop. | 🌐 |
| Day 7 | Bridge Repair | Find equations that can be solved using + and * operators (left-to-right evaluation) and sum their test values. |
Same as part 1, but also including || (concatenation) operator. |
🌐 |
| Day 8 | Resonant Collinearity | Count unique antinode locations where two same-frequency antennas are aligned with one being twice as far as the other. | Count unique antinode locations where any two or more same-frequency antennas are aligned, regardless of distance. | 🌐 |
| Day 9 | Disk Fragmenter | Move file blocks one at a time from end to leftmost free space and calculate checksum (position * file ID sum). |
Same as part 1, but move entire files instead of blocks, from highest to lowest file ID. | 🌐 |
| Day 10 | Hoof It | Find trailheads (height 0) and count how many height-9 positions each can reach via paths that increase by 1. Sum all scores. | For each trailhead, count number of distinct possible paths to any height-9 position. Sum all these counts. | 🌐 |
| Day 11 | Plutonian Pebbles | Transform stones with numbers according to rules (if 0 -> 1, if even digits -> split in half, else -> multiply by 2024) for 25 iterations and count resulting amount of stones. | Same as part 1, but for 75 iterations. | 🌐 |
| Day 12 | Garden Groups | Calculate total price of fencing garden regions by multiplying each region's area by its perimeter. | Same as part 1, but instead of perimeter, use total number of distinct fence sides regardless of length. | 🌐 |
| Day 13 | Claw Contraption | Find minimum tokens needed to win prizes by pressing A (3 tokens) and B (1 token) buttons that move claw by X,Y amounts to reach prize coordinates. | Same but with prize coordinates increased by 10^13 on both X and Y axes. | 🌐 |
| Day 14 | Restroom Redoubt | Predict positions of robots moving in straight lines that wrap around edges after 100 movements. Then multiply number of robots in each quadrant. | Find minimum movements needed for robots to form a Christmas tree pattern. | 🌐 |
| Day 15 | Warehouse Woes | Track a robot (@) pushing boxes (O) around a warehouse according to movement instructions (^v<>). Calculate sum of box GPS coordinates (row * 100 + col) after all moves. |
Same as part 1, but with double-width warehouse and boxes ([]). Robot stays same size. |
🌐 |
| Day 16 | Reindeer Maze | Find lowest possible score to reach the end of a maze (1 point per step, 1000 points per turn). | Count how many tiles are part of any optimal (lowest-score) path through the maze. | 🌐 |
| Day 17 | Chronospatial Computer | Run a 3-bit computer program with given register values and instructions and output the sequence of results. | Find lowest initial value for register A that makes the program output itself. | 🌐 |
| Day 18 | RAM Run | Find shortest path from top left corner to bottom right corner in a grid where coordinates are getting corrupted by falling bytes. Must avoid corrupted spots and stay within bounds. | Find coordinates of the first falling byte that makes it impossible to reach the exit. | 🌐 |
| Day 19 | Linen Layout | Count how many towel designs are possible to make using given pattern pieces. | Count total number of different ways each possible design can be made. | 🌐 |
| Day 20 | Race Condition | Find number of possible 2-tile wall-passing cheats that save >= 100 tiles vs normal path. | Same as part 1, but with up to 20-tile wall-passing cheats. | 🌐 |
| Day 21 | Keypad Conundrum | Control a chain of 3 robots (using directional keypads) to input codes on a numeric keypad. Calculate sum of complexities (sequence_length * numeric_code) of the codes at the end of the chain. |
Same as part 1, but with 26 robots in the chain instead of 3. | 🌐 |
| Day 22 | Monkey Market | Given a list of initial numbers, calculate each number's 2000th generation using a specific transformation process, then sum all 2000th numbers. | Convert each generated number to its ones digit to get prices. Find the sequence of 4 price changes that, when applied to all buyers' price histories, results in the highest sum of prices at the points where that sequence first appears. | 🌐 |
| Day 23 | LAN Party | Count sets of 3 interconnected computers where at least one computer name starts with t. |
Find the largest set of fully interconnected computers where each computer directly connects to all others in the set. | 🌐 |
| Day 24 | Crossed Wires | Simulate boolean logic gates (AND, OR, XOR) with initial values on x-wires and y-wires to compute final decimal number on z-wires. |
Find 4 pairs of swapped gate outputs to make the circuit correctly perform binary addition. | 🌐 |
| Day 25 | Code Chronicle | Analyze lock/key schematics to find how many unique pairs fit together without overlap. Each lock/key is represented as columns of # extending down/up. |
No actual puzzle - just a story conclusion. Free star after completing all previous 49 puzzles. | 🌐 |
2024
Directory actions
More options
Directory actions
More options
2024
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
parent directory.. | ||||
