{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "
Peter Norvig
December 1–25, 2021
\n", "\n", "# Advent of Code 2021\n", "\n", "I'm doing [Advent of Code](https://adventofcode.com/2021) (AoC) this year. I'm not competing for points, just participating for fun.\n", "\n", "To fully understand each puzzle's instructions, click on the link (e.g. [**Day 1**](https://adventofcode.com/2021/day/1)); I give only brief summaries here. \n", "\n", "Part of the idea of AoC is that you have to make some design choices to solve Part 1 *before* you get to see the instructions for Part 2. So there is a tension of wanting the solution to Part 1 to provide components that can be re-used in Part 2, without falling victim to [YAGNI](https://en.wikipedia.org/wiki/You_aren%27t_gonna_need_it). In this notebook I won't refactor the code for Part 1 after I see what is requested in Part 2 (although I may edit the code for clarity, without changing the initial approach). Sometimes I will explore further, inventing my own \"Part 3\".\n", "\n", "This year's AoC theme involves Santa's Elves on a submarine. Gary J. Grady ([@GaryJGrady](https://twitter.com/GaryJGrady/) on Twitter) has some nice drawings to set the scene:\n", "\n", "\n", "\n", "# Day 0: Preparations\n", "\n", "I put some imports and functions that I thought would be useful in a notebook of utility functions, [AdventUtils.ipynb](AdventUtils.ipynb)." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "%run AdventUtils.ipynb\n", "\n", "current_year = 2021" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 1](https://adventofcode.com/2021/day/1): Sonar Sweep\n", "\n", "\n", "- **Input**: Each item in the input is an integer depth measurement.\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 2000 strs of size 3 to 4:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "148\n", "167\n", "168\n", "169\n", "182\n", "188\n", "193\n", "209\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 2000 ints in range 148 to 5626:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "148\n", "167\n", "168\n", "169\n", "182\n", "188\n", "193\n", "209\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "in1 = parse(1, int)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 1**: **How many measurements are larger than the previous measurement?**" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 1.1: 0.1 msec, correct answer: 1400 " ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def increases(measurements: Sequence[int]) -> int:\n", " \"\"\"How many measurements are larger than the previous measurement?\"\"\"\n", " return quantify(measurements[i] > measurements[i - 1] \n", " for i in range(1, len(measurements)))\n", "\n", "answer(1.1, 1400, lambda: increases(in1))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 2**: Consider sums of a three-measurement sliding window. **How many sums are larger than the previous sum?**" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 1.2: 0.4 msec, correct answer: 1429 " ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def windows(sequence, width) -> list[Sequence]:\n", " \"\"\"All sliding (overlapping) windows of given `width` in sequence.\"\"\"\n", " return [sequence[i:i+width] \n", " for i in range(len(sequence) + 1 - width)]\n", "\n", "answer(1.2, 1429, lambda: increases(mapt(sum, windows(in1, 3))))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 3**: Visualization\n", "\n", "Let's take a look at where the depths are taking us:" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(in1, 'b.'); plt.ylabel('Depth'); plt.gca().invert_yaxis();" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "It looks like Gary Grady was right; the submarine is descending at a steep angle." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 2](https://adventofcode.com/2021/day/2): Dive! \n", "\n", "- **Input**: Each item in the input is a command name (\"forward\", \"down\", or \"up\") followed by an integer.\n", "\n", "I'll parse a command into a tuple like `('forward', 2)`." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 1000 strs of size 4 to 9:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "forward 2\n", "down 7\n", "down 8\n", "forward 9\n", "down 8\n", "forward 9\n", "forward 8\n", "down 3\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 1000 tuples of size 2:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "('forward', 2)\n", "('down', 7)\n", "('down', 8)\n", "('forward', 9)\n", "('down', 8)\n", "('forward', 9)\n", "('forward', 8)\n", "('down', 3)\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "in2 = parse(2, atoms)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 1**: Calculate the horizontal position and depth you would have after following the planned course. **What do you get if you multiply your final horizontal position by your final depth?**" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 2.1: 0.0 msec, correct answer: 1670340 " ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def drive(commands) -> int:\n", " \"\"\"What is the product of position and depth after following commands?\"\"\"\n", " pos = depth = 0\n", " for (op, n) in commands:\n", " if op == 'forward': pos += n\n", " if op == 'down': depth += n\n", " if op == 'up': depth -= n\n", " return pos * depth\n", "\n", "answer(2.1, 1_670_340, lambda: drive(in2))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 2**: Using the new interpretation of the commands, calculate the horizontal position and depth you would have after following the planned course. **What do you get if you multiply your final horizontal position by your final depth?**\n", "\n", "The *new interpretation* is that the \"down\" and \"up\" commands no longer change depth, rather they change *aim*, and going forward *n* units both increments position by *n* and depth by *aim* × *n*." ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 2.2: 0.0 msec, correct answer: 1954293920 " ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def drive2(commands) -> int:\n", " \"\"\"What is the product of position and depth after following commands?\n", " This time we have to keep track of `aim` as well.\"\"\"\n", " pos = depth = aim = 0\n", " for (op, n) in commands:\n", " if op == 'forward': pos += n; depth += aim * n\n", " if op == 'down': aim += n\n", " if op == 'up': aim -= n\n", " return pos * depth\n", "\n", "answer(2.2, 1_954_293_920, lambda: drive2(in2))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 3](https://adventofcode.com/2021/day/3): Binary Diagnostic\n", "\n", "- **Input**: Each item in the input is a bit string of `0`s and `1`s.\n", "\n", "I'll parse them as strings; I won't convert them into ints." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 1000 strs of size 12:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "101000111100\n", "000011111101\n", "011100000100\n", "100100010000\n", "011110010100\n", "101001100000\n", "110001010000\n", "111110011011\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "in3 = parse(3)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 1**: Use the binary numbers in your diagnostic report to calculate the gamma rate and epsilon rate, then multiply them together. **What is the power consumption of the submarine?**" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 3.1: 0.6 msec, correct answer: 2261546 " ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def common(strs, i) -> Char: # '1' or '0'\n", " \"\"\"The bit that is most common in position i among strs.\"\"\"\n", " bits = [s[i] for s in strs]\n", " return '1' if bits.count('1') >= bits.count('0') else '0'\n", "\n", "def uncommon(strs, i) -> Char: # '1' or '0'\n", " \"\"\"The bit that is least common in position i among strs.\"\"\"\n", " return '1' if common(strs, i) == '0' else '0'\n", "\n", "def epsilon(strs) -> str:\n", " \"\"\"The bit string formed from most common bit at each position.\"\"\"\n", " return cat(common(strs, i) for i in range(len(strs[0])))\n", "\n", "def gamma(strs) -> str:\n", " \"\"\"The bit string formed from most uncommon bit at each position.\"\"\"\n", " return cat(uncommon(strs, i) for i in range(len(strs[0])))\n", "\n", "def power(strs) -> int: \n", " \"\"\"Product of epsilon and gamma rates.\"\"\"\n", " return int(epsilon(strs), 2) * int(gamma(strs), 2)\n", " \n", "answer(3.1, 2261546, lambda: power(in3))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 2**: Use the binary numbers in your diagnostic report to calculate the oxygen generator rating and CO2 scrubber rating, then multiply them together. **What is the life support rating of the submarine?**\n", "\n", "This time I'll have a single function, `select_str` which selects the str that survives the process of picking strs with the most common or uncommon bit at each position. Then I call `select_str` with `common` to get the oxygen rating and `uncommon` to get the CO2 rating." ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 3.2: 0.2 msec, correct answer: 6775520 " ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def select_str(strs, common_fn, i=0) -> str:\n", " \"\"\"Select a str from strs according to common_fn:\n", " Going left-to-right, repeatedly select just the strs that have the right i-th bit.\n", " When only one string is remains, return it.\"\"\"\n", " if len(strs) == 1:\n", " return strs[0]\n", " else:\n", " bit = common_fn(strs, i)\n", " selected = [s for s in strs if s[i] == bit]\n", " return select_str(selected, common_fn, i + 1)\n", "\n", "def life_support(strs) -> int: \n", " \"\"\"The product of oxygen (most common select) and CO2 (least common select) rates.\"\"\"\n", " return int(select_str(strs, common), 2) * int(select_str(strs, uncommon), 2)\n", " \n", "answer(3.2, 6775520, lambda: life_support(in3))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 4](https://adventofcode.com/2021/day/4): Giant Squid\n", "\n", "- **Input**: The first item of the input is a permutation of the integers 0-99. Subsequent items are bingo boards: 5 lines of 5 ints each. items are separated by *two* newlines. \n", "\n", "I'll represent a board as a tuple of 25 ints; that makes `parse` easy: the permutation of integers and the bingo boards can both be parsed by `ints`. (Bingo games will be played against a giant squid; we get to choose which board we want to play.)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 601 strs of size 0 to 289:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "73,42,95,35,13,40,99,92,33,30,83,1,36,93,59,90,55,25,77,44,37,62,41,47,80,23,51,61,21,20,76,8,71 ...\n", "\n", "91 5 64 81 34\n", "15 99 31 63 65\n", "45 39 54 93 83\n", "51 14 23 86 32\n", "19 22 16 13 3\n", "\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 101 tuples of size 25 to 100:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "(73, 42, 95, 35, 13, 40, 99, 92, 33, 30, 83, 1, 36, 93, 59, 90, 55, 25, 77, 44, 37, 62, 41, 47, ...\n", "(91, 5, 64, 81, 34, 15, 99, 31, 63, 65, 45, 39, 54, 93, 83, 51, 14, 23, 86, 32, 19, 22, 16, 13, 3)\n", "(20, 83, 38, 85, 70, 69, 12, 14, 26, 84, 19, 76, 45, 78, 99, 22, 80, 90, 33, 46, 75, 31, 21, 6, 28)\n", "(22, 52, 65, 75, 2, 91, 12, 45, 18, 94, 38, 66, 85, 39, 1, 24, 36, 55, 74, 3, 89, 14, 79, 99, 48)\n", "(19, 58, 95, 22, 6, 48, 28, 57, 30, 72, 12, 67, 15, 37, 18, 33, 1, 49, 90, 60, 35, 41, 47, 11, 84)\n", "(89, 27, 65, 68, 19, 38, 83, 21, 81, 91, 67, 61, 87, 30, 10, 36, 45, 66, 56, 4, 82, 71, 44, 96, 90)\n", "(29, 84, 40, 62, 92, 69, 39, 2, 1, 56, 6, 20, 27, 97, 54, 14, 28, 65, 52, 32, 31, 58, 36, 95, 8)\n", "(84, 46, 4, 15, 66, 28, 99, 17, 68, 37, 57, 6, 8, 64, 12, 18, 23, 24, 45, 34, 39, 55, 85, 5, 19)\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "order, *boards = in4 = parse(4, ints, paragraphs)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 1**: To guarantee victory against the giant squid, figure out which board will win first. **What will your final score be if you choose that board?**" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "I'm worried about an ambiguity: what if two boards win at the same time? I'll have to assume Eric arranged it so that can't happen. I'll define `bingo_winners` to return a list of boards that win when a number has just been called, and I'll arbitrarily choose the first of them." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 4.1: 1.1 msec, correct answer: 39902 " ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "B = 5 # Bingo board is size B by B.\n", "Board = tuple[int] # B * B ints\n", "Line = list[int] # B ints\n", "\n", "def lines(square) -> tuple[Line, Line]:\n", " \"\"\"The two lines (horizontal and vertical) through square number `square`.\"\"\"\n", " def sq(x, y) -> int: return x + B * y\n", " return ([sq(x, square // B) for x in range(B)], \n", " [sq(square % B, y) for y in range(B)])\n", "\n", "def bingo_winners(boards, drawn, just_called) -> list[Board]:\n", " \"\"\"Board(s) that win due to the number just called.\"\"\"\n", " def filled(board, line) -> bool: return all(board[n] in drawn for n in line)\n", " return [board for board in boards\n", " if just_called in board\n", " and any(filled(board, line) \n", " for line in lines(board.index(just_called)))]\n", "\n", "def bingo_score(board, drawn, just_called) -> int:\n", " \"\"\"Sum of unmarked numbers multiplied by the number just called.\"\"\"\n", " unmarked = sum(n for n in board if n not in drawn)\n", " return unmarked * just_called\n", "\n", "def bingo(boards, order) -> int: \n", " \"\"\"What is the final score of the first winning board?\"\"\"\n", " drawn = set()\n", " for num in order:\n", " drawn.add(num)\n", " winners = bingo_winners(boards, drawn, num)\n", " if winners:\n", " return bingo_score(winners[0], drawn, num)\n", "\n", "answer(4.1, 39902, lambda: bingo(boards, order))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 2**: Figure out which board will win last. **Once it wins, what would its final score be?**" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 4.2: 2.1 msec, correct answer: 26936 " ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def bingo_last(boards, order) -> int: \n", " \"\"\"What is the final score of the last winning board?\"\"\"\n", " remaining_boards = set(boards)\n", " drawn = set()\n", " for num in order:\n", " drawn.add(num)\n", " winners = bingo_winners(remaining_boards, drawn, num)\n", " remaining_boards -= set(winners)\n", " if not remaining_boards:\n", " return bingo_score(winners[-1], drawn, num)\n", " \n", "answer(4.2, 26936, lambda: bingo_last(boards, order))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 5](https://adventofcode.com/2021/day/5): Hydrothermal Venture\n", "\n", "- **Input**: Each item in the input is a \"line\" denoted by start and end x,y points, e.g. \"`0,9 -> 5,9`\". \n", "\n", "I'll represent a line as a 4-tuple of integers, e.g. `(0, 9, 5, 9)`." ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 500 strs of size 15 to 18:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "409,872 -> 409,963\n", "149,412 -> 281,280\n", "435,281 -> 435,362\n", "52,208 -> 969,208\n", "427,265 -> 884,265\n", "779,741 -> 779,738\n", "949,41 -> 13,977\n", "145,690 -> 145,180\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 500 tuples of size 4:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "(409, 872, 409, 963)\n", "(149, 412, 281, 280)\n", "(435, 281, 435, 362)\n", "(52, 208, 969, 208)\n", "(427, 265, 884, 265)\n", "(779, 741, 779, 738)\n", "(949, 41, 13, 977)\n", "(145, 690, 145, 180)\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "in5 = parse(5, ints)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 1**: Consider only horizontal and vertical lines. **At how many points do at least two lines overlap?**" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 5.1: 33.7 msec, correct answer: 7436 " ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def points(line) -> list[Point]:\n", " \"\"\"All the (integer) points on a line.\"\"\"\n", " x1, y1, x2, y2 = line\n", " if x1 == x2:\n", " return [(x1, y) for y in cover(y1, y2)]\n", " elif y1 == y2:\n", " return [(x, y1) for x in cover(x1, x2)]\n", " else: # non-orthogonal lines not allowed\n", " return []\n", " \n", "def overlaps(lines) -> int:\n", " \"\"\"How many points overlap 2 or more lines?\"\"\"\n", " counts = Counter(flatten(map(points, lines)))\n", " return quantify(counts[p] >= 2 for p in counts)\n", "\n", "answer(5.1, 7436, lambda: overlaps(in5))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 2**: Consider all of the lines (including diagonals, which are all at ±45°). **At how many points do at least two lines overlap?**" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For Part 2 I'll redefine `points` and `overlaps` in a way that doesn't break Part 1:" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 5.2: 30.9 msec, correct answer: 21104 " ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def points(line, diagonal=False) -> bool:\n", " \"\"\"All the (integer) points on a line; optionally allow diagonal lines.\"\"\"\n", " x1, y1, x2, y2 = line\n", " if diagonal or x1 == x2 or y1 == y2:\n", " dx, dy = sign(x2 - x1), sign(y2 - y1)\n", " length = max(abs(x2 - x1), abs(y2 - y1))\n", " return [(x1 + k * dx, y1 + k * dy) for k in range(length + 1)]\n", " else: # non-orthogonal lines not allowed when diagonal is False\n", " return []\n", " \n", "def overlaps(lines, diagonal=False) -> int:\n", " \"\"\"How many points overlap 2 or more lines?\"\"\"\n", " counts = Counter(flatten(points(line, diagonal) for line in lines))\n", " return quantify(counts[p] >= 2 for p in counts)\n", "\n", "assert points((1, 1, 1, 3), False) == [(1, 1), (1, 2), (1, 3)]\n", "assert points((1, 1, 3, 3), False) == []\n", "assert points((1, 1, 3, 3), True) == [(1, 1), (2, 2), (3, 3)]\n", "assert points((9, 7, 7, 9), True) == [(9, 7), (8, 8), (7, 9)]\n", "\n", "answer(5.1, 7436, lambda: overlaps(in5, diagonal=False)) # Make sure it still works\n", "answer(5.2, 21104, lambda: overlaps(in5, diagonal=True))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 6](https://adventofcode.com/2021/day/6): Lanternfish\n", "\n", "- **Input**: The input is comma-separated integers, each the age of a lanternfish (according to its internal timer). \n", "\n", "Over time, the lanternfish age and reproduce: Each day, their timer decrements by one. The day after it reaches 0 it is reset to 6 and a new lanternfish is born with an internal timer of 8." ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 1 str of size 599:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "5,4,3,5,1,1,2,1,2,1,3,2,3,4,5,1,2,4,3,2,5,1,4,2,1,1,2,5,4,4,4,1,5,4,5,2,1,2,5,5,4,1,3,1,4,2,4,2, ...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 1 tuple of size 300:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "(5, 4, 3, 5, 1, 1, 2, 1, 2, 1, 3, 2, 3, 4, 5, 1, 2, 4, 3, 2, 5, 1, 4, 2, 1, 1, 2, 5, 4, 4, 4, 1, ...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "in6 = the(parse(6, ints))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 1**: Find a way to simulate lanternfish. **How many lanternfish would there be after 80 days?**\n", "\n", "Although the puzzle instructions treats each fish individually, I won't take the bait (pun intended). \n", "\n", "Instead, I'll use a `Counter` of fish, and process all the fish of each age group together, all at once. That way each update will be *O*(9) = *O*(1), not *O*(*n*). I have a hunch that Part 2 will involve a ton-o'-fish." ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 6.1: 0.1 msec, correct answer: 350917 " ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Fish = Counter # Represent a school of fish as a Counter of their internal timers\n", "\n", "def simulate(fish, days=1) -> Fish:\n", " \"\"\"Simulate the aging and birth of fish over `days`.\"\"\"\n", " for day in range(days):\n", " fish = Fish({t - 1: fish[t] for t in fish})\n", " if -1 in fish: # births\n", " fish[6] += fish[-1]\n", " fish[8] = fish[-1]\n", " del fish[-1]\n", " return fish\n", " \n", "assert simulate(Fish((3, 4, 3, 1, 2))) == Fish((2, 3, 2, 0, 1))\n", "assert simulate(Fish((2, 3, 2, 0, 1))) == Fish((1, 2, 1, 6, 0, 8))\n", "assert Fish((1, 1, 1, 6, 8, 6)) == {1: 3, 6: 2, 8: 1}\n", "\n", "answer(6.1, 350917, lambda: total(simulate(Fish(in6), 80)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 2**: **How many lanternfish would there be after 256 days?**\n", "\n", "My hunch was right, so part 2 is straightforward:" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 6.2: 0.3 msec, correct answer: 1592918715629 " ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "answer(6.2, 1_592_918_715_629, lambda: total(simulate(Fish(in6), 256)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "That's over a trillion lanternfish. Latest [estimates](https://www.google.com/search?q=how+many+fish+are+in+the+sea) say that there are in fact trillions of fish in the sea. But not trillions of lanternfish, and not increasing from 300 to over a trillion in just 256 days.\n", "\n", "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 7](https://adventofcode.com/2021/day/7): The Treachery of Whales\n", "\n", "- **Input**: The input is a single line of comma-separated integers, each the horizontal position of a crab (in its own submarine)." ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 1 str of size 3886:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "1101,1,29,67,1102,0,1,65,1008,65,35,66,1005,66,28,1,67,65,20,4,0,1001,65,1,65,1106,0,8,99,35,67, ...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 1 tuple of size 1000:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "(1101, 1, 29, 67, 1102, 0, 1, 65, 1008, 65, 35, 66, 1005, 66, 28, 1, 67, 65, 20, 4, 0, 1001, 65, ...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "in7 = the(parse(7, ints))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The idea is that if you can get the crabs to all align in one horizontal position, they can save you from a giant whale by opening up an escape route to a cave.\n", "\n", "\n", "\n", "- **Part 1**: Determine the horizontal position that the crabs can align to using the least fuel possible. (Each unit of horizontal travel costs one unit of fuel.) **How much fuel must they spend to align to that position?**" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 7.1: 0.1 msec, correct answer: 352707 " ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def fuel_cost(positions) -> int:\n", " \"\"\"How much fuel does it cost to get everyone to the best alignment point?\"\"\"\n", " # I happen to know that the best alignment point is the median\n", " align = int(median(positions))\n", " return sum(abs(p - align) for p in positions)\n", "\n", "answer(7.1, 352707, lambda: fuel_cost(in7))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 2**: Determine the horizontal position that the crabs can align to using the least fuel possible so they can make you an escape route! (Now for each crab the first unit of travel costs 1, the second 2, the third 3, and so on.) **How much fuel must they spend to align to that position?**" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 7.2: 147.9 msec, correct answer: 95519693 " ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def fuel_cost2(positions) -> int:\n", " \"\"\"How much fuel does it cost to get everyone to the best alignment point, \n", " with nonlinear fuel costs?\"\"\"\n", " # I don't know the best alignment point, so I'll try all of them\n", " return min(sum(burn_rate2(p, align) for p in positions)\n", " for align in cover(*positions))\n", "\n", "def burn_rate2(p, align) -> int:\n", " \"\"\"The first step costs 1, the second 2, etc. (i.e. triangular numbers).\"\"\"\n", " steps = abs(p - align)\n", " return steps * (steps + 1) // 2\n", "\n", "answer(7.2, 95519693, lambda: fuel_cost2(in7))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 3**: Analysis and Visualization\n", "\n", "Now that I got the right answer and have some time to think about it, if the travel cost were exactly quadratic, we would be minimizing the sum of square distances, and Legendre and Gauss knew that the **mean**, not the **median**, is the alignment point that does that. What's the mean of the positions?" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "490.543" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "positions = in7\n", "mean(positions)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "That's not an integer, but I'll try it, along with the integers above and below it:" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{490: 95519693, 491: 95519725, 490.543: 95519083.0}" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "{align: sum(burn_rate2(p, align) for p in positions)\n", " for align in [490, 491, mean(positions)]}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We see that rounding down gives the right answer, rounding up does a bit worse, and using the exact mean gives a total fuel cost that is *better* than the correct answer (but is apparently not a legal alignment point). A reddit user with the name CrashAndSideburns looked more carefully into the use of the mean, and wrote [a paper](https://www.reddit.com/r/adventofcode/comments/rawxad/2021_day_7_part_2_i_wrote_a_paper_on_todays/) showing that the best alignment point must be within ±0.5 from the mean.\n", "\n", "Below I show a histogram of the number of crabs at each range of horizontal positions, along with red stars for the two alignment points (median and mean)." ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[376.0, 490.543]" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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gIANO88995z5OWnSpKu2BQUFyZUrV7xTMgAAAF+EHedILAAAgEDAVc8BAIDVrjvsrFy5UurVqyenT5++apteE6t+/fqyZs0ab5cPAACgYMLO5MmTpV+/flKmTJmrtoWFhZkJBd99991bKw0AAICvws53330nHTp0yHP7gw8+KFu3bvVWuQAAAAo27Bw/flyKFClyzQkHf/nlF/EmHdk1cuRIqVGjhrnCes2aNeWvf/2rxwVH9faoUaOkSpUqZp/Y2FjZv3+/V8sBAAAC13WHnTvuuEN2796d5/adO3eawOFNEyZMkOnTp8v//M//yN69e819ncF56tSprn30/pQpU2TGjBmyceNGM+9PXFycXLx40atlAQAAloedTp06mVqW3ELEhQsXZPTo0fLQQw95tXB6gdGuXbtK586dJSoqSh599FHTXLZp0yZXrY72JXrttdfMfo0aNZK5c+fK0aNHZfHixV4tCwAAsDzsaKA4efKk3H333aY25fPPPzeL1rbUrl3bbHv11Ve9WrjWrVtLcnKy/PDDD65+Q2vXrjWzOKuDBw9KWlqaabpy7yzdsmVLSUlJyfN5MzMzzagy9wUAABTySQUrV65saloGDBggiYmJrn4zOmuyNhslJSWZfbxJL0uhQaROnTpy2223mT48b775psTHx5vtGnScZctZVue23IwbN05ef/11r5YVAABYMINy9erV5auvvpLffvtNDhw4YAJPrVq1pFy5cvlSuE8++UTmzZsn8+fPN/P47NixQ4YMGSJVq1aVPn363PTzalgbNmyY674GqoiICC+VGgAABPTlIpSGmxYtWkh+Gz58uKnd6dWrl7nfsGFDOXz4sKmZ0bATHh7uGinm3jla7zdp0iTP5w0NDTULAACwn19fLuL8+fMSHOxZRG3Ocl6fS4eka+DRfj3utTQ6KismJqbAywsAACyp2SkoXbp0MX10IiMjTTPW9u3bzdXWn376aVd/IW3WeuONN0xzmoYfHTGmzVzdunXzdfEBAIAf8Ouwo/PpaHh57rnnJD093YQYvSyFTiLo9PLLL8u5c+ekf//+curUKWnTpo0sXbpUihUr5tOyAwCAAGrGatasmemUrMaOHWualwpC6dKlzTw62k9H5/L58ccfTS1O0aJFXfto7Y6WSUdf6RxAK1asMMPjAQAArjvs6OzFWnuidMj22bNnefcAAIA9zVg6sqlv376miUiHm7/99ttSqlSpXPd1b2ICAAAIiLAzZ84cczmIJUuWmGajr7/+2lz4MyfdRtgBAAABF3b0chALFiwwt3UouA71rlSpUn6XDQAAoOBHYznnuAEAALB26LmOitJRUtpxWdWrV09eeOEFqVmzprfLBwAAULAzKC9btsyEm02bNkmjRo3MojMW66R/y5cvv7XSAAAA+LpmR69VNXToUBk/fvxV60eMGCF//OMfvVk+AACAgq3Z0aarhISEq9brJRy+//77WysNAACAr8NOxYoVZceOHVet13WM0AIAAAHfjNWvXz9zHaqffvpJWrdubdatW7dOJkyYIMOGDcuPMgIAABRc2NELc+o1q9555x1JTEw06/QCnWPGjJHBgwfffEkAAAD8IezoLMnaQVmXM2fOmHUafgAAAKyZZ8eJkAMAAKzroAwAABBICDsAAMBqt9SMBf8T9cqX173vofGd87UsAAAEXM1OVlaWtG/fXvbv359/JQIAAPBV2ClSpIjs3LnTm68PAADgX312nnjiCZk5c2b+lAYAAMDXfXYuX74ss2bNkhUrVkh0dLSULFnSY/ukSZO8WT4AAICCDTu7d++WZs2amds//PDDVRMOIvDQqRkAYLMbDjurVq3Kn5IAAAD40zw7Bw4ckGXLlsmFCxfMfYfD4c1yAQAA+CbsnDhxwgw/v/vuu6VTp05y7Ngxsz4hIUFefPFF75QKAADAV2FHLwCqQ9CPHDkiJUqUcK3v2bOnLF261FvlAgAA8E2fnX/961+m+apatWoe62vVqiWHDx/2TqkAAAB8VbNz7tw5jxodp5MnT0poaKi3ygUAAOCbsHPffffJ3LlzPYabZ2dny8SJE6Vdu3beKRUAAICvmrE01GgH5S1btsilS5fk5Zdflj179pianXXr1nmrXAAAAL6p2WnQoIGZTLBNmzbStWtX06zVvXt32b59u9SsWdM7pQIAAPBVzY4KCwuTV1991VtlAAAA8K+w89tvv5mLge7du9fcr1evnvTt21fKly/v7fIBAADckhtuxlqzZo1ERUXJlClTTOjRRW/XqFHDbAMAAAjomp2BAweaCQSnT58ut912m1l35coVee6558y2Xbt25Uc5AQAACqZmR6+JpZeFcAYdpbeHDRtmtgEAAAR02GnWrJmrr447Xde4cWNvlQsAAKDgmrF2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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "stars = [median(in7), mean(in7)]\n", "plt.hist(in7, bins=33, rwidth=0.8); \n", "plt.plot(stars, [50, 50], 'r*')\n", "plt.ylabel('Number of Crabs'); plt.xlabel('Position')\n", "stars" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 8](https://adventofcode.com/2021/day/8): Seven Segment Search\n", "\n", "- **Input**: Each item in the input consists of 10 *patterns* followed by a \"`|`\", followed by 4 *output values*.\n", " \n", "I'll split on the `|` and then extract atoms from both sides:" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 200 strs of size 76 to 90:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "daegb gadbcf cgefda edcfagb dfg acefbd fdgab fg bdcfa fcgb | cdfgba fgbc dbfac gfadbc\n", "bdfc dcbegf bf egfbcda gebad cfgaed bfe edfgc aegfcb gebdf | fb fb bcdfaeg fcgdeb\n", "cebdgaf bfcd gceab bf bfcea gceafd ecdfa fegdab bfcade fba | dfcb dagfbe fbaged bfa\n", "efabcg aegcdb fgaed fac dgafbc becf eadcgbf aegfc fc cagbe | ecgfa agdef eagfc gdceab\n", "fcdae cdeabf fga gf gabfde cgadb gadebfc cgfe aegcdf afgcd | fbgadce gadefb fag bafegd\n", "gecadbf bgc dacgf gaecbf cbeda dbfg bgdca bg bafcgd gdacef | cdgfa fceabg dgfb dgabc\n", "fbecdga gcdbea cegab fc cafe cfg ebgdf cbgfe afbgec bagcdf | feac acegb bfagce gcafbe\n", "defgca fbdcga dbcfeg ag dabg cfagb dbcfg afcbe cga abgedcf | ag gefcbda afecdg ga\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 200 tuples of size 2:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "(('daegb', 'gadbcf', 'cgefda', 'edcfagb', 'dfg', 'acefbd', 'fdgab', 'fg', 'bdcfa', 'fcgb'), ('cd ...\n", "(('bdfc', 'dcbegf', 'bf', 'egfbcda', 'gebad', 'cfgaed', 'bfe', 'edfgc', 'aegfcb', 'gebdf'), ('fb ...\n", "(('cebdgaf', 'bfcd', 'gceab', 'bf', 'bfcea', 'gceafd', 'ecdfa', 'fegdab', 'bfcade', 'fba'), ('df ...\n", "(('efabcg', 'aegcdb', 'fgaed', 'fac', 'dgafbc', 'becf', 'eadcgbf', 'aegfc', 'fc', 'cagbe'), ('ec ...\n", "(('fcdae', 'cdeabf', 'fga', 'gf', 'gabfde', 'cgadb', 'gadebfc', 'cgfe', 'aegcdf', 'afgcd'), ('fb ...\n", "(('gecadbf', 'bgc', 'dacgf', 'gaecbf', 'cbeda', 'dbfg', 'bgdca', 'bg', 'bafcgd', 'gdacef'), ('cd ...\n", "(('fbecdga', 'gcdbea', 'cegab', 'fc', 'cafe', 'cfg', 'ebgdf', 'cbgfe', 'afbgec', 'bagcdf'), ('fe ...\n", "(('defgca', 'fbdcga', 'dbcfeg', 'ag', 'dabg', 'cfagb', 'dbcfg', 'afcbe', 'cga', 'abgedcf'), ('ag ...\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "in8 = parse(8, lambda line: mapt(atoms, line.split('|')))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Each pattern and output value represents a digit on a [7-segment display](https://en.wikipedia.org/wiki/Seven-segment_display), with each letter a–g representing one of the 7 segments that is turned on in that digit. The mapping of letters to segments differs for each input item, but is consistent across all the digits within each item. Here's one mapping:\n", "\n", " aaaa\n", " b c\n", " b c\n", " dddd\n", " e f\n", " e f\n", " gggg\n", " \n", "\n", "\n", "- **Part 1**: **In the output values, how many times do digits 1, 4, 7, or 8 appear?**\n", "\n", "That's the same as asking *how many output values have a length of 2, 4, 3, or 7 segments?*" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 8.1: 0.0 msec, correct answer: 493 " ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def lengths2437(data):\n", " \"\"\"Count the output values with lengths 2, 4, 3, 7.\"\"\"\n", " return quantify(len(value) in (2, 4, 3, 7) \n", " for (lhs, rhs) in data \n", " for value in rhs)\n", "\n", "answer(8.1, 493, lambda: lengths2437(in8))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 2**: For each entry, determine all of the wire/segment connections and decode the four-digit output values. **What do you get if you add up all of the output values?**" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Part 2 is *tricky*. The first output value `'cdfgba'` has 6 segments, so it could be either a 0, 6, or 9. To figure out which one it is I could do some fancy constraint satisfaction. That sounds hard. Or I could exhaustively try all permutations of the ways the 7 letters can map to the 7 segments. That sounds easy! Here's my plan:\n", "- Make a list of the 7! = 5,040 possible `str.maketrans` translators that permute `'abcdefg'`.\n", "- Decode an entry by trying all translators and keeping the one that maps all of the ten lhs patterns to a valid digit. `decode` then applies the translator to the four rhs values, concatenates them, and converts the result into an `int`.\n", " - Note that `get_digit` must *sort* the translated letters to get a key that can be looked up in `segment_map`.\n", "- Finally, sum up the decoding of each entry." ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 8.2: 346.6 msec, correct answer: 1010460 " ] }, "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ "segments7 = 'abcdefg'\n", "segment_map = {'abcefg': '0', 'cf': '1', 'acdeg': '2', 'acdfg': '3', 'bcdf': '4',\n", " 'abdfg': '5', 'abdefg': '6', 'acf': '7', 'abcdefg': '8', 'abcdfg': '9'}\n", "\n", "translators = [str.maketrans(segments7, cat(p)) for p in permutations(segments7)]\n", "\n", "def get_digit(pattern, translator) -> Char | None:\n", " \"\"\"Translate the pattern, and return a digit '0' to '9' if valid.\"\"\"\n", " return segment_map.get(cat(sorted(pattern.translate(translator))))\n", "\n", "def decode(entry) -> int:\n", " \"\"\"Decode an entry's rhs into a 4-digit integer.\"\"\"\n", " lhs, rhs = entry\n", " for t in translators:\n", " if all(get_digit(pattern, t) for pattern in lhs):\n", " return int(cat(get_digit(pattern, t) for pattern in rhs))\n", "\n", "answer(8.2, 1010460, lambda: sum(map(decode, in8)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 9](https://adventofcode.com/2021/day/9): Smoke Basin\n", "\n", "- **Input:** The input is a *heightmap*: a 2D array of characters '0'–'9' representing the heights on the ocean floor. \n", "\n", "I'll use `parse` to get a tuple of rows (where each row is a tuple of digits), and turn that into a `Grid`." ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 100 strs of size 100:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "9897656789865467895698765469899988672134598894345689864101378965457932349943210987654789653198789434\n", "8789542499996878954329984398789976561012987789245678953212567892345791998899329899765678969997668912\n", "7678943978987989965998993297649875432129876567956789864487678991056899877778939769886789998766457899\n", "4578999868998996899867894976532986543299876476897899987569899989167898766567898654998898998655345678\n", "2456987657679535679756799988643498657987654345789978899789998878998919954349997543219967987543237889\n", "1234896545568986798645678999754989767898765456998769759899987765789329863238898659301256798793156891\n", "2346789432379997987434689489899879898919876567899954346998796434678997642127789798512345989989247892\n", "8756894210998989876545694378987868999101998688999863238987684323457789751015678987654459878678956994\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 100 tuples of size 100:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "(9, 8, 9, 7, 6, 5, 6, 7, 8, 9, 8, 6, 5, 4, 6, 7, 8, 9, 5, 6, 9, 8, 7, 6, 5, 4, 6, 9, 8, 9, 9, 9, ...\n", "(8, 7, 8, 9, 5, 4, 2, 4, 9, 9, 9, 9, 6, 8, 7, 8, 9, 5, 4, 3, 2, 9, 9, 8, 4, 3, 9, 8, 7, 8, 9, 9, ...\n", "(7, 6, 7, 8, 9, 4, 3, 9, 7, 8, 9, 8, 7, 9, 8, 9, 9, 6, 5, 9, 9, 8, 9, 9, 3, 2, 9, 7, 6, 4, 9, 8, ...\n", "(4, 5, 7, 8, 9, 9, 9, 8, 6, 8, 9, 9, 8, 9, 9, 6, 8, 9, 9, 8, 6, 7, 8, 9, 4, 9, 7, 6, 5, 3, 2, 9, ...\n", "(2, 4, 5, 6, 9, 8, 7, 6, 5, 7, 6, 7, 9, 5, 3, 5, 6, 7, 9, 7, 5, 6, 7, 9, 9, 9, 8, 8, 6, 4, 3, 4, ...\n", "(1, 2, 3, 4, 8, 9, 6, 5, 4, 5, 5, 6, 8, 9, 8, 6, 7, 9, 8, 6, 4, 5, 6, 7, 8, 9, 9, 9, 7, 5, 4, 9, ...\n", "(2, 3, 4, 6, 7, 8, 9, 4, 3, 2, 3, 7, 9, 9, 9, 7, 9, 8, 7, 4, 3, 4, 6, 8, 9, 4, 8, 9, 8, 9, 9, 8, ...\n", "(8, 7, 5, 6, 8, 9, 4, 2, 1, 0, 9, 9, 8, 9, 8, 9, 8, 7, 6, 5, 4, 5, 6, 9, 4, 3, 7, 8, 9, 8, 7, 8, ...\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "in9 = Grid(parse(9, digits))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 1**: Find all of the low points on your heightmap. **What is the sum of the risk levels of all low points on your heightmap?**\n", "\n", "A low point is a point where all the neighbors are higher. The risk level is 1 more than the height of the low point." ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 9.1: 7.4 msec, correct answer: 607 " ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def low_points(grid) -> list[Point]:\n", " \"\"\"All low points on grid.\"\"\"\n", " return [p for p in grid \n", " if all(grid[p] < grid[nbr] for nbr in grid.neighbors(p))]\n", "\n", "def total_risk(grid) -> int:\n", " \"\"\"Sum of height + 1 for all low points on grid.\"\"\"\n", " return sum(grid[p] + 1 for p in low_points(grid))\n", "\n", "answer(9.1, 607, lambda: total_risk(in9))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 2**: **What do you get if you multiply together the sizes of the three largest basins?**\n", " \n", "I thought there was an ambiguity in the definition of *basin*: what happens if there is a high point that is not of height 9, but has low points on either side of it? Wouldn't that high point then be part of two basins? The puzzle instructions says *Locations of height 9 do not count as being in any basin, and all other locations will always be part of exactly one basin.* I decided this must mean that the heightmap is carefully arranged so that every basin has only one low point and is surrounded by either edges or height 9 locations.\n", "\n", "With that assumption, I can associate each location with its low point using a [flood fill](https://en.wikipedia.org/wiki/Flood_fill) that starts from each low point. I can then get the sizes of the three largest (most common) basins and multiply them together." ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 9.2: 14.0 msec, correct answer: 900864 " ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def find_basins(grid) -> dict[Point, Point]:\n", " \"\"\"Compute `basins` as a dict of {point: low_point_of_point's_basin} for each point in grid.\"\"\"\n", " basins = {} # A dict mapping each non-9 location to its low point.\n", " def flood_fill(p, low):\n", " \"\"\"Spread from p in all directions until hitting a 9;\n", " mark each point p as being part of the basin with `low` point.\"\"\"\n", " if grid[p] < 9 and p not in basins:\n", " basins[p] = low\n", " for p2 in grid.neighbors(p):\n", " flood_fill(p2, low)\n", " for p in low_points(grid):\n", " flood_fill(p, low=p)\n", " return basins\n", "\n", "answer(9.2, 900864, lambda: \n", " prod(count for low_point, count in \n", " Counter(find_basins(in9).values()).most_common(3)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 3**: Visualization\n", "\n", "I'll make a plot to display height 9 locations in yellow and height 0 locations in deep purple, with a gradient in between:" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def show_heights(in9, low=None):\n", " plt.figure(figsize=(10, 10))\n", " C = [in9[p] for p in in9]\n", " plt.scatter(*T(in9), marker='s', s=10, c=C, cmap=plt.get_cmap('plasma'))\n", " if low: plt.plot(*T(low_points(in9)), low, markersize=4)\n", " plt.axis('square'); plt.axis('off')\n", " \n", "show_heights(in9)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can optionally display the low points. Here I'll display them as red diamonds:" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAxYAAAMWCAYAAABsvhCnAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjgsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvwVt1zgAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzsvQuYXFWV973q1tXV1V2ddCcSQG4OFxFvI4oXhm9GJjMM7+fwokb0BV5BbgkEyKUTEiLIRZSEJJ2EEJKAIHjhY0YujiODOgzqoI6COoogw0USg0CQdJK+VXd1dVV9zzrV1X3q1Nn/XbXOOZWqZP+fx4dObc9lr7XX2nufc/ZvhwqFQoGMjIyMjIyMjIyMjIw8KOzlYCMjIyMjIyMjIyMjIzOxMDIyMjIyMjIyMjLyReaNhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkZGRkZGRkZGRZ5mJhZGRkdH+qi9+kSgcLv63HscZ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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "show_heights(in9, low='rD')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Apropos to *Smoke* and *Water,* and to the color scheme of my plot, Gary Grady's drawing for the day references [Deep Purple](https://www.youtube.com/watch?v=_zO6lWfvM0g):\n", "\n", "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 10](https://adventofcode.com/2021/day/10): Syntax Scoring\n", "\n", "- **Input**: Each item in the input is a string of opening and closing brackets: `[({<` and `>})]`.\n" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 102 strs of size 90 to 109:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "[(([{<{(<{{[({{}{}}{[]()})<{{}()}>]}}(([{{{}[]}[[]()]}[<{}[]]{()()}]](({{}{}}{{}()}))){[{({}())[[\n", "<(({[<([{({[{{<>()}}[{<>()}({}{})]]<{<()<>>{[]()}}(((){}>[[][]])>}([{<[]{}>(<>[])}]))<[[[[[][]\n", "(<<(<{{{{<<<[(()<>){()<>}][[()()]]>{<{[]{}}<<>()>>}>{(<{<>}([]{})><(<>())<(){}>>)<(([]{})(()())) ...\n", "[[[[<[{[(<{{{({}<>)((){})}((()())[()()])}}><[([((){})]<[()[]]{{}<>}>)[[{[]<>}][([]{})[{}()]]]]>)<{(<\n", "[<(<[[((<{((<<<>[]>><<<>{}>>){<[{}<>][<>[]]><<<>()>[(){}]>})[<{[{}<>][(){}]}<[[]<>][{}[]])>{([<>[]][\n", "(([[[[<([[{([{<>()}{()<>}][((){})]){[{[]<>}({}<>)][(<><>)[()[]]]}}<{{({}{}){[]{}}}<{<><>}({}{})>}>\n", "{{{[<(<([<{({{[]()}[{}()]}{<()<>>(()<>)})}><<[{<()()>(()[])}<<<>[]]>][<{()}{<><>}>({{}[]})]>>](\n", "(((<<({<{{<[{[{}[]][()<>]}({{}{}}[{}[]])]>}<<((<{}[]>{<>{}})[{{}[]}])>{<({<>}<<>[]>){[{}{}][()[\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 102 strs of size 90 to 109:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "[(([{<{(<{{[({{}{}}{[]()})<{{}()}>]}}(([{{{}[]}[[]()]}[<{}[]]{()()}]](({{}{}}{{}()}))){[{({}())[[\n", "<(({[<([{({[{{<>()}}[{<>()}({}{})]]<{<()<>>{[]()}}(((){}>[[][]])>}([{<[]{}>(<>[])}]))<[[[[[][]\n", "(<<(<{{{{<<<[(()<>){()<>}][[()()]]>{<{[]{}}<<>()>>}>{(<{<>}([]{})><(<>())<(){}>>)<(([]{})(()())) ...\n", "[[[[<[{[(<{{{({}<>)((){})}((()())[()()])}}><[([((){})]<[()[]]{{}<>}>)[[{[]<>}][([]{})[{}()]]]]>)<{(<\n", "[<(<[[((<{((<<<>[]>><<<>{}>>){<[{}<>][<>[]]><<<>()>[(){}]>})[<{[{}<>][(){}]}<[[]<>][{}[]])>{([<>[]][\n", "(([[[[<([[{([{<>()}{()<>}][((){})]){[{[]<>}({}<>)][(<><>)[()[]]]}}<{{({}{}){[]{}}}<{<><>}({}{})>}>\n", "{{{[<(<([<{({{[]()}[{}()]}{<()<>>(()<>)})}><<[{<()()>(()[])}<<<>[]]>][<{()}{<><>}>({{}[]})]>>](\n", "(((<<({<{{<[{[{}[]][()<>]}({{}{}}[{}[]])]>}<<((<{}[]>{<>{}})[{{}[]}])>{<({<>}<<>[]>){[{}{}][()[\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "in10 = parse(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Ideally, the brackets are balanced, but items might be *corrupted* (an extra closing bracket of the wrong kind appears in the wrong place) or *incomplete* (one or more closing brackets are missing from the end).\n", " \n", "- **Part 1**: Find the first illegal character in each corrupted line of the navigation subsystem. **What is the total syntax error score for those errors?**\n", "\n", "The instructions for Part 1 say *Some of the lines aren't corrupted, just incomplete; you can ignore these lines for now.* That suggests we will not ignore the incomplete lines in Part 2. So I'll define `analyze_syntax` to return a tuple of two values: an error score for use in Part 1, and the missing characters for an incomplete line, which I suspect will be used in Part 2." ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 10.1: 0.6 msec, correct answer: 367059 " ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "error_scores = {')': 3, ']': 57, '}': 1197, '>': 25137}\n", "open_close = {'(': ')', '[': ']', '{': '}', '<': '>'}\n", "\n", "def analyze_syntax(line) -> tuple[int, str]:\n", " \"\"\"A tuple of (error_score, missing_chars) for this line.\"\"\"\n", " stack = [''] # A stack of closing characters we are looking for.\n", " for c in line:\n", " if c == stack[-1]: # A correctly matched closing bracket\n", " stack.pop()\n", " elif c in open_close: # A new opening bracket\n", " stack.append(open_close[c])\n", " else: # An erroneous closing bracket\n", " return error_scores[c], cat(reversed(stack))\n", " return 0, cat(reversed(stack))\n", " \n", "answer(10.1, 367059, lambda: sum(analyze_syntax(line)[0] for line in in10))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 2**: Find the completion string for each incomplete line, score the completion strings, and sort the scores. **What is the middle score?**\n", "\n", "I was right; Part 2 uses the missing characters (now called a *completion string*). To score the completion string, we treat it as a base-5 number, as shown in `completion_score`." ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 10.2: 0.4 msec, correct answer: 1952146692 " ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def completion_score(completion:str) -> int:\n", " \"\"\"The completion score for the completion string (the missing characters).\"\"\"\n", " score = completion.translate(str.maketrans(')]}>', '1234'))\n", " return int(score, base=5)\n", "\n", "def median_completion_score(lines) -> int:\n", " \"\"\"The median completion score out of all the uncorrupted lines.\"\"\"\n", " scores = (completion_score(completion) \n", " for e, completion in map(analyze_syntax, lines) \n", " if e == 0)\n", " return median(scores)\n", "\n", "answer(10.2, 1_952_146_692, lambda: median_completion_score(in10))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 11](https://adventofcode.com/2021/day/11): Dumbo Octopus\n", "\n", "- **Input**: The input is a 2D array of characters `0`–`9` representing the energy levels of bioluminescent [dumbo octopuses](https://www.youtube.com/watch?v=eih-VSaS2g0)." ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 10 strs of size 10:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "1224346384\n", "5621128587\n", "6388426546\n", "1556247756\n", "1451811573\n", "1832388122\n", "2748545647\n", "2582877432\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 10 tuples of size 10:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "(1, 2, 2, 4, 3, 4, 6, 3, 8, 4)\n", "(5, 6, 2, 1, 1, 2, 8, 5, 8, 7)\n", "(6, 3, 8, 8, 4, 2, 6, 5, 4, 6)\n", "(1, 5, 5, 6, 2, 4, 7, 7, 5, 6)\n", "(1, 4, 5, 1, 8, 1, 1, 5, 7, 3)\n", "(1, 8, 3, 2, 3, 8, 8, 1, 2, 2)\n", "(2, 7, 4, 8, 5, 4, 5, 6, 4, 7)\n", "(2, 5, 8, 2, 8, 7, 7, 4, 3, 2)\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "in11 = Grid(parse(11, digits), directions8)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 1**: Given the starting energy levels of the dumbo octopuses in your cavern, simulate 100 steps. **How many total flashes are there after 100 steps?**\n", "\n", "On each step, each octopus increases by one energy unit; then the ones with an energy level over 9 emit a flash, which makes their neighbors get one more energy unit (potentially causing others to flash); then the flashers reset to zero energy." ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 11.1: 3.8 msec, correct answer: 1591 " ] }, "execution_count": 39, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def simulate_flashes(grid, steps=100) -> int:\n", " \"\"\"Simulate octopus flashes for `steps` steps and return total number of flashes.\"\"\"\n", " grid = grid.copy() # Don't mutate the original grid\n", " flashes = 0\n", " for step in range(steps):\n", " flashers = set()\n", " for p in grid:\n", " grid[p] += 1\n", " for p in grid:\n", " check_flash(grid, p, flashers)\n", " for p in flashers:\n", " grid[p] = 0\n", " flashes += len(flashers)\n", " return flashes\n", "\n", "def check_flash(grid, p, flashers):\n", " \"\"\"Check if grid[p] flashes, and if so, recursively spread.\"\"\"\n", " if grid[p] > 9 and p not in flashers:\n", " flashers.add(p)\n", " for p2 in grid.neighbors(p):\n", " grid[p2] += 1\n", " check_flash(grid, p2, flashers)\n", " \n", "answer(11.1, 1591, lambda: simulate_flashes(in11, 100))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 2**: If you can calculate the exact moments when the octopuses will all flash simultaneously, you should be able to navigate through the cavern. **What is the first step during which all octopuses flash?**\n", "\n", "I feel a bit bad that I have to copy/paste/edit the whole simulation function, changing just the number of steps and the return. But at least I don't have to copy the `check_flash` function." ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 11.2: 11.1 msec, correct answer: 314 " ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def simulate_flashes2(grid) -> int:\n", " \"\"\"Simulate octopus flashes and return the first step during which all octopuses flash.\"\"\"\n", " grid = grid.copy() # Don't mutate the original grid\n", " for step in count_from(1):\n", " flashers = set()\n", " for p in grid:\n", " grid[p] += 1\n", " for p in grid:\n", " check_flash(grid, p, flashers)\n", " for p in flashers:\n", " grid[p] = 0\n", " if len(flashers) == len(grid):\n", " return step\n", " \n", "answer(11.2, 314, lambda: simulate_flashes2(in11))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 12](https://adventofcode.com/2021/day/11): Passage Pathing\n", "\n", "- **Input**: Each item in the input is a connection between two caves. Big caves are written in uppercase, small caves in lowercase. `start` and `end` are two special caves with the obvious meaning." ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 22 strs of size 5 to 8:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "xx-xh\n", "vx-qc\n", "cu-wf\n", "ny-LO\n", "cu-DR\n", "start-xx\n", "LO-vx\n", "cu-LO\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 22 tuples of size 2:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "('xx', 'xh')\n", "('vx', 'qc')\n", "('cu', 'wf')\n", "('ny', 'LO')\n", "('cu', 'DR')\n", "('start', 'xx')\n", "('LO', 'vx')\n", "('cu', 'LO')\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "in12 = parse(12, words)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 1**: **How many paths through this cave system are there that visit small caves at most once?**\n", "\n", "My approach is as follows:\n", "- I'll define a path as a list of cave names: `['start', ..., 'end']`.\n", "- I'll construct `neighbors` as a mapping from a cave to the list of caves it connects to.\n", "- I'll do depth-first search, starting from the trivial path `['start']` and returning all possible paths. " ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 12.1: 5.0 msec, correct answer: 4167 " ] }, "execution_count": 42, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Path = list[str]\n", " \n", "def search_paths(path, neighbors) -> Iterable[Path]:\n", " \"\"\"All paths that start with `path` and lead to 'end' using `neighbors`.\n", " Small caves can only be visited once.\"\"\"\n", " if path[-1] == 'end':\n", " yield [path]\n", " else:\n", " for cave in neighbors[path[-1]]:\n", " if cave.isupper() or cave not in path:\n", " yield from search_paths(path + [cave], neighbors)\n", "\n", "neighbors = multimap(in12, symmetric=True)\n", " \n", "answer(12.1, 4167, lambda: quantify(search_paths(['start'], neighbors)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 2**: After reviewing the available paths, you realize you might have time to visit a single small cave twice. However, the caves named `start` and `end` can only be visited exactly once each. Given these new rules, **how many paths through this cave system are there?**\n", "\n", "At first I felt bad that I would again have to copy/paste/edit the code for Part 1. I felt better when I realized that the revised function `search_paths2` would have need to call the original `search_paths`: once a path returns to a small cave for the second time, the remainder of the search should be under the `search_paths` rules, not the `search_paths2` rules." ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 12.2: 123.4 msec, correct answer: 98441 " ] }, "execution_count": 43, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def search_paths2(path, neighbors) -> Iterable[Path]:\n", " \"\"\"Find all paths that start with `path` and lead to 'end' using `neighbors`.\n", " Small caves can only be visited once, except one of them may be visited twice.\"\"\"\n", " if path[-1] == 'end':\n", " yield [path]\n", " else:\n", " for cave in neighbors[path[-1]]:\n", " if cave.isupper() or cave not in path:\n", " yield from search_paths2(path + [cave], neighbors)\n", " elif cave.islower() and cave != 'start':\n", " yield from search_paths(path + [cave], neighbors)\n", " \n", "answer(12.2, 98441, lambda: quantify(search_paths2(['start'], neighbors)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 13](https://adventofcode.com/2021/day/13): Transparent Origami\n", "\n", "- **Input**: The input is a set of dots, e.g. \"`6,10`\", followed by an ordered list of fold instructions, e.g. \"`fold along y=7`\".\n", "\n", "My `parse` command is not set up to parse two different sections, so I'll ask `parse` only to parse each line into a tuple of atoms. Then I'll further process the items to get two variables:\n", "- `dots`: a set of `(x, y)` points, such as `(6, 10)`. \n", "- `folds`: a list of fold instructions such as `('fold', 'along', 'y', 7)`." ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 789 strs of size 0 to 16:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "103,224\n", "624,491\n", "808,688\n", "1076,130\n", "700,26\n", "55,794\n", "119,724\n", "773,809\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 789 tuples of size 0 to 4:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "(103, 224)\n", "(624, 491)\n", "(808, 688)\n", "(1076, 130)\n", "(700, 26)\n", "(55, 794)\n", "(119, 724)\n", "(773, 809)\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "in13 = parse(13, atoms)" ] }, { "cell_type": "code", "execution_count": 45, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(123, 456, 'fold', 'along', 'x', 3)" ] }, "execution_count": 45, "metadata": {}, "output_type": "execute_result" } ], "source": [ "atoms('123,456 fold along x=3')" ] }, { "cell_type": "code", "execution_count": 46, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[('fold', 'along', 'x', 655),\n", " ('fold', 'along', 'y', 447),\n", " ('fold', 'along', 'x', 327),\n", " ('fold', 'along', 'y', 223),\n", " ('fold', 'along', 'x', 163),\n", " ('fold', 'along', 'y', 111),\n", " ('fold', 'along', 'x', 81),\n", " ('fold', 'along', 'y', 55),\n", " ('fold', 'along', 'x', 40),\n", " ('fold', 'along', 'y', 27),\n", " ('fold', 'along', 'y', 13),\n", " ('fold', 'along', 'y', 6)]" ] }, "execution_count": 46, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dots = {item for item in in13 if len(item) == 2} \n", "folds = [item for item in in13 if len(item) > 2]\n", "folds" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The idea of this puzzle is that the dots are on transparent paper, and when following the `fold along y=7` instruction, all the dots below the line `y=7` are reflected above the line: they retain the same distance form the `y=7` line, but their `y` value becomes less than `7`. Similarly, for an `x` fold, all the points to the right of the line are reflected to the left. When we finish the folds, a code message will appear (which we can then use to activate the infrared thermal imaging camera system).\n", "\n", "- **Part 1**: **How many dots are visible after completing just the first fold instruction on your transparent paper?**" ] }, { "cell_type": "code", "execution_count": 47, "metadata": {}, "outputs": [], "source": [ "def fold(dots, instruction) -> set[Point]: \n", " \"\"\"The set of dots that result from following the fold instruction.\"\"\"\n", " fold, along, x_or_y, line = instruction\n", " if x_or_y == 'x':\n", " return {(line - abs(line - x), y) for (x, y) in dots}\n", " else:\n", " return {(x, line - abs(line - y)) for (x, y) in dots}" ] }, { "cell_type": "code", "execution_count": 48, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 13.1: 0.1 msec, correct answer: 638 " ] }, "execution_count": 48, "metadata": {}, "output_type": "execute_result" } ], "source": [ "answer(13.1, 638, lambda: len(fold(dots, folds[0])))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 2**: Finish folding the transparent paper according to the instructions. **What code do you use to activate the infrared thermal imaging camera system?**" ] }, { "cell_type": "code", "execution_count": 49, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 13.2: 3.3 msec, correct answer: CJCKBAPB " ] }, "execution_count": 49, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def origami(dots, instructions) -> None:\n", " \"\"\"Follow all the instructions and plot the resulting dots.\"\"\"\n", " for instruction in instructions:\n", " dots = fold(dots, instruction)\n", " naked_plot(dots, size=(6, 1))\n", " \n", "answer(13.2, \"CJCKBAPB\", lambda: origami(dots, folds) or \"CJCKBAPB\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "I kind of cheated here. I didn't want to write an OCR program, so I relied on my own eyes to look at the dots and see the code.\n", "\n", "**Note**: My transparent paper was folded 12 times. Is that physically feasible? [Britney Gallivan](https://www.youtube.com/watch?v=AfPDvhKvaa0&) says yes (barely)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 14](https://adventofcode.com/2021/day/14): Extended Polymerization" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Input**: The input is a a polymer template (a string of one-letter element names, such as \"`NNCB`\") followed by a list of pair insertion rules (such as \"`CH -> B`\", meaning that a `B` should be inserted into the middle of each `CH` pair).\n", "\n", "I'll parse each line of the input into a list of `words` (thus ignoring the \"`->`\" characters); then pick out:\n", "- `polymer`: the sole word on the first line.\n", "- `rules`: the third through last lines, converted into a dict, like `{'CH': 'B', ...}`." ] }, { "cell_type": "code", "execution_count": 50, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 102 strs of size 0 to 20:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "ONSVVHNCFVBHKVPCHCPV\n", "\n", "VO -> C\n", "VV -> S\n", "HK -> H\n", "FC -> C\n", "VB -> V\n", "NO -> H\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 102 tuples of size 0 to 2:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "('ONSVVHNCFVBHKVPCHCPV',)\n", "()\n", "('VO', 'C')\n", "('VV', 'S')\n", "('HK', 'H')\n", "('FC', 'C')\n", "('VB', 'V')\n", "('NO', 'H')\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "in14 = parse(14, words)\n", "polymer = in14[0][0]\n", "rules = dict(in14[2:])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 1**: Apply 10 steps of pair insertion to the polymer template and find the most and least common elements in the result. **What do you get if you take the quantity of the most common element and subtract the quantity of the least common element?**\n", "\n", "Pair insertion means inserting the element on the right hand side of a rule between each two-element pair. All two-element substrings are considered as pairs, including overlapping ones (my utility function `pairs` handles this). All insertions happen simultaneously during a step." ] }, { "cell_type": "code", "execution_count": 51, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 14.1: 2.2 msec, correct answer: 3259 " ] }, "execution_count": 51, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def pair_insertion(polymer: str, rules, steps: int) -> str:\n", " \"\"\"Insert elements into polymer according to rules; repeat `steps` times.\"\"\"\n", " for _ in range(steps):\n", " polymer = cat(pair[0] + rules[pair]\n", " for pair in pairs(polymer)) + polymer[-1]\n", " return polymer\n", "\n", "def quantity_difference(polymer) -> int:\n", " \"\"\"The count of most common element minus the count of least common element.\"\"\"\n", " counts = Counter(polymer).values()\n", " return max(counts) - min(counts)\n", "\n", "def pairs(seq: Sequence) -> list[Sequence]: \"All overlapping pairs\"; return windows(seq, 2)\n", "\n", "assert polymer == 'ONSVVHNCFVBHKVPCHCPV'\n", "assert rules['VO'] == 'C'\n", "assert pairs('NNCB') == ['NN', 'NC', 'CB']\n", "assert pair_insertion('NNCB', rules={'NN': 'C', 'NC': 'B', 'CB': 'H'}, steps=1) == 'NCNBCHB'\n", "\n", "answer(14.1, 3259, lambda: quantity_difference(pair_insertion(polymer, rules, 10)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 2**: Apply 40 steps of pair insertion to the polymer template and find the most and least common elements in the result. **What do you get if you take the quantity of the most common element and subtract the quantity of the least common element?**\n", "\n", "The instructions warn us that the resulting polymer after 40 steps will be *trillions* of elements long. So it isn't feasible to just call `pair_insertion` with steps=40. Instead, I'll employ the same trick as with the lanternfish in Day 6: use a `Counter` of element pairs so that, for example, all the `'NC'` pairs in the polymer are handled simultaneously in one operation, rather than handling each one individually. No matter how many steps we do, there are only 100 distinct element pairs, so iterating over them 40 times should be very fast. \n", "\n", "Here's an example Counter of element pairs:" ] }, { "cell_type": "code", "execution_count": 52, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Counter({'NN': 1, 'NC': 1, 'CB': 1})" ] }, "execution_count": 52, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Counter(pairs('NNCB'))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "What letters does this represent? The complication is that the pairs overlap, so, if we added up the counts for all the times that, say, the letter `'C'` appears in keys of the Counter, we'd get 2; but it should be 1. We can divide the sum by 2 to avoid double counting, but the first and last letters in the polymer are *not* double-counted, so we need to add back 1/2 for each of those letters. Fortunately the first and last letters are invariant under pair insertion, so we can do this adjustment at the end; we don't have to do it for each step.\n", "\n", "So all in all there are three representations of a polymer:" ] }, { "cell_type": "code", "execution_count": 53, "metadata": {}, "outputs": [], "source": [ "Polymer = str # e.g. 'NNCB'\n", "PairCounter = Counter[str] # e.g. Counter({'NN': 1, 'NC': 1, 'CB': 1})\n", "LetterCounter = Counter[Char] # e.g. Counter({'N': 2, 'C': 1, 'B': 1})" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here's how we convert a PairCounter into a LetterCounter:" ] }, { "cell_type": "code", "execution_count": 54, "metadata": {}, "outputs": [], "source": [ "def letter_counts(pair_ctr: PairCounter, polymer: Polymer) -> LetterCounter:\n", " \"\"\"Return a Counter of the letters in the polymer described by the `pair_ctr`.\"\"\"\n", " letters = set(flatten(pair_ctr))\n", " def letter_count(L) -> int:\n", " return int(sum(pair_ctr[L+M] + pair_ctr[M+L] for M in letters) / 2\n", " + (L == polymer[0]) / 2 + (L == polymer[-1]) / 2)\n", " return Counter({L: letter_count(L) for L in letters})" ] }, { "cell_type": "code", "execution_count": 55, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Counter({'N': 2, 'C': 1, 'B': 1})" ] }, "execution_count": 55, "metadata": {}, "output_type": "execute_result" } ], "source": [ "letter_counts(Counter(pairs('NNCB')), 'NNCB')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's make sure it works when the first and last letters are the same:" ] }, { "cell_type": "code", "execution_count": 56, "metadata": {}, "outputs": [], "source": [ "assert (letter_counts(Counter(pairs('NNCB')), 'NNCB')\n", " == letter_counts(Counter(pairs('NCBN')), 'NCBN'))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now the new function `pair_insertion_difference` can call on `pair_insertion2` to solve Part 2 (as well as Part 1):" ] }, { "cell_type": "code", "execution_count": 57, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 14.2: 0.8 msec, correct answer: 3459174981021 " ] }, "execution_count": 57, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def pair_insertion2(polymer, rules, steps) -> PairCounter:\n", " \"\"\"Insert elements into polymer according to rules; repeat `steps` times.\n", " Return a Counter of element pairs.\"\"\"\n", " pair_ctr = Counter(pairs(polymer))\n", " for _ in range(steps):\n", " pair_ctr2 = Counter()\n", " for LM in pair_ctr:\n", " pair_ctr2[LM[0] + rules[LM]] += pair_ctr[LM]\n", " pair_ctr2[rules[LM] + LM[1]] += pair_ctr[LM]\n", " pair_ctr = pair_ctr2\n", " return pair_ctr\n", "\n", "def pair_insertion_difference(polymer, rules, steps):\n", " \"\"\"Most common minus least common after `steps` of pair insertion.\"\"\"\n", " return quantity_difference(letter_counts(pair_insertion2(polymer, rules, steps), polymer))\n", "\n", "assert Counter(pairs('NNCB')) == Counter({'NN': 1, 'NC': 1, 'CB': 1})\n", "assert pair_insertion2('NNCB', rules={'NN': 'C', 'NC': 'B', 'CB': 'H'}, steps=1) == (\n", " Counter({'NC': 1, 'CN': 1, 'NB': 1, 'BC': 1, 'CH': 1, 'HB': 1}))\n", "assert letter_counts(Counter({'NC': 1, 'CN': 1, 'NB': 1, 'BC': 1, 'CH': 1, 'HB': 1}), 'NNCB') == (\n", " Counter({'N': 2, 'C': 2, 'B': 2, 'H': 1}))\n", "assert pair_insertion_difference('NNCB', rules={'NN': 'C', 'NC': 'B', 'CB': 'H'}, steps=1) == 1\n", "\n", "answer(14.1, 3259, lambda: pair_insertion_difference(polymer, rules, 10))\n", "answer(14.2, 3459174981021, lambda: pair_insertion_difference(polymer, rules, 40))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 3**: Polymer length?\n", "\n", "The instructions didn't ask, but I want to know the length of the polymer that was created after 40 steps:" ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "20,890,720,927,744\n" ] } ], "source": [ "length = total(pair_insertion2(polymer, rules, 40))\n", "print(f'{length:,d}')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Almost 21 trillion. Good to know." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 15](https://adventofcode.com/2021/day/15): Chiton\n", "\n", "- **Input**: The input is a square grid of *risk levels* (each one digit, 1–9) for locations in the cave." ] }, { "cell_type": "code", "execution_count": 59, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 100 strs of size 100:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "4249856395422795894919869133487611581179923326874763428673979547991221931142777981153991369468629849\n", "5812974178739823463799939791688998895568796557798392761499941349143539572865883254186633218867928826\n", "3699989976298596286299499129934993241824395574879938998946914116375199242199151918863674914554714898\n", "5682435936794718871685718386458294198391116125679589438794914499278679393779734596558953699438589518\n", "7681197997388219696918569664119968498599547892968929425479817979816979144947916716989874825679487436\n", "9981166198272997899142698141878643123757515999788822988261499197559193945291512682763935126815448215\n", "8849481991861599951293183728419792414164347979985169641698899853377259811688489269959429131918919179\n", "3146684963669199195628973847379928251333566129941616877139631993381755512697185555441659879412994594\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 100 tuples of size 100:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "(4, 2, 4, 9, 8, 5, 6, 3, 9, 5, 4, 2, 2, 7, 9, 5, 8, 9, 4, 9, 1, 9, 8, 6, 9, 1, 3, 3, 4, 8, 7, 6, ...\n", "(5, 8, 1, 2, 9, 7, 4, 1, 7, 8, 7, 3, 9, 8, 2, 3, 4, 6, 3, 7, 9, 9, 9, 3, 9, 7, 9, 1, 6, 8, 8, 9, ...\n", "(3, 6, 9, 9, 9, 8, 9, 9, 7, 6, 2, 9, 8, 5, 9, 6, 2, 8, 6, 2, 9, 9, 4, 9, 9, 1, 2, 9, 9, 3, 4, 9, ...\n", "(5, 6, 8, 2, 4, 3, 5, 9, 3, 6, 7, 9, 4, 7, 1, 8, 8, 7, 1, 6, 8, 5, 7, 1, 8, 3, 8, 6, 4, 5, 8, 2, ...\n", "(7, 6, 8, 1, 1, 9, 7, 9, 9, 7, 3, 8, 8, 2, 1, 9, 6, 9, 6, 9, 1, 8, 5, 6, 9, 6, 6, 4, 1, 1, 9, 9, ...\n", "(9, 9, 8, 1, 1, 6, 6, 1, 9, 8, 2, 7, 2, 9, 9, 7, 8, 9, 9, 1, 4, 2, 6, 9, 8, 1, 4, 1, 8, 7, 8, 6, ...\n", "(8, 8, 4, 9, 4, 8, 1, 9, 9, 1, 8, 6, 1, 5, 9, 9, 9, 5, 1, 2, 9, 3, 1, 8, 3, 7, 2, 8, 4, 1, 9, 7, ...\n", "(3, 1, 4, 6, 6, 8, 4, 9, 6, 3, 6, 6, 9, 1, 9, 9, 1, 9, 5, 6, 2, 8, 9, 7, 3, 8, 4, 7, 3, 7, 9, 9, ...\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "in15 = Grid(parse(15, digits))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 1**: You start in the top left position, your destination is the bottom right position, and you cannot move diagonally. **What is the lowest total risk of any path from the top left to the bottom right?** (Don't count the risk level of your starting position.)\n", "\n", "Gary Grady's drawing represents the risk involved in finding a path that avoids bumping into the ceiling above or the chitons below.\n", "\n", "\n", "\n", "I'll call upon my `A_star_search` function from my [AdventUtils.ipynb](AdventUtils.ipynb). All I have to do is define what we're searching for: a path through the `in15` grid that starts at `(0, 0)` and goes to the highest-value grid location. Then we can ignore the steps in the path and just return the total path cost. I need to subclass `GridProblem` to make the cost of moving into a position be that position's risk level." ] }, { "cell_type": "code", "execution_count": 60, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 15.1: 31.6 msec, correct answer: 687 " ] }, "execution_count": 60, "metadata": {}, "output_type": "execute_result" } ], "source": [ "class GridCostProblem(GridProblem):\n", " \"\"\"Search on a grid where the cost of moving to a square is that square's value.\"\"\"\n", " def action_cost(self, s, a, s1): return self.grid[a]\n", "\n", "def search_grid(grid, initial=(0, 0), goal=None) -> Node:\n", " \"\"\"Search grid. By default from corner to corner.\"\"\"\n", " return A_star_search(GridCostProblem(grid=grid, initial=initial, goal=goal or max(grid)))\n", "\n", "answer(15.1, 687, lambda: search_grid(in15).path_cost)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 2**: The entire cave is actually five times larger in both dimensions. Your original map tile repeats to the right and downward; each time the tile repeats, all of its risk levels are 1 higher than the tile immediately up or left of it. However, risk levels above 9 wrap back around to 1. Using the full map, **what is the lowest total risk of any path from the top left to the bottom right?**\n", "\n", "Defining the full map is a bit tricky, but after that, the search is the same:" ] }, { "cell_type": "code", "execution_count": 61, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 15.2: 1,058.6 msec, correct answer: 2957 " ] }, "execution_count": 61, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def repeat_grid(grid, repeat=5):\n", " \"\"\"Extend the grid to be `repeat` times larger in both directions.\n", " Values within each repeated block are increased by 1 for each repetition to the right or down,\n", " but values over 9 wrap around to 1.\"\"\"\n", " w, h = add(max(grid), (1, 1))\n", " return Grid({(x + xr * w, y + yr * h): clock_mod(grid[x, y] + xr + yr, 9)\n", " for xr in range(repeat) \n", " for yr in range(repeat)\n", " for x, y in grid})\n", "\n", "full_map = repeat_grid(in15, 5)\n", "\n", "answer(15.2, 2957, lambda: search_grid(full_map).path_cost)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 3**: Visualization\n", "\n", "Here we see the two paths on the two grids:" ] }, { "cell_type": "code", "execution_count": 62, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "def plot_search_grid(grid, fmt='g-'):\n", " \"\"\"Plot the path from start to goal.\"\"\"\n", " node = search_grid(grid)\n", " path = path_states(node)\n", " plt.plot(*T(path), fmt); plt.gca().invert_yaxis()\n", " plt.title(f'Path with {len(path) - 1} steps; risk level {node.path_cost}')\n", " \n", "plot_search_grid(in15)" ] }, { "cell_type": "code", "execution_count": 63, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAigAAAGzCAYAAAAFROyYAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjgsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvwVt1zgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAQEJJREFUeJzt3Qt8VNW1x/GdQAIk4WGQp4KPiiLyaqIVqmgVCiLaqtiqlypVKkqBq6JU0yr4aI0Xe7W+FWvBe6tSsaJXrFZERUVUTEQRhYJVwQoBpRASCgFy7ue/7RnPTCbJTDKTOWfm9/18hmEeyZw5M5mzZu21185yHMcxAAAAPpKd6g0AAACIRIACAAB8hwAFAAD4DgEKAADwHQIUAADgOwQoAADAdwhQAACA7xCgAAAA3yFAAQAAvkOAAt+6/vrrTVZWlvnyyy9b9HH1mHrsWO87ZcqUpG8T/CWe94jre9/7nunfv3+THu+nP/2pOfjgg40f+GlbkN4IUBC3uXPn2g9o99S2bVtz+OGH2wN1RUVF3L/v5ptvNk899ZRvX4k33njDHoy2bduW8N993333mR/96Eemd+/edl/qw78+evyJEyeaLl26mPz8fHPSSSeZ8vLyOvf705/+ZH7yk5+YPn362N+pA2MsfvOb39j7N/UgGsTXFslRW1trPyd+8IMfmF69etn3q95Xv/71r82uXbvq3F+fGxdeeKHp2rWradeunSkqKjLz58+v90tL5EmfQQ19RkWeHnnkEV76AGid6g1AcN14443mkEMOsR84r7/+uj3Y/uUvfzEffPCBycvLi+sgdvbZZ5szzjjD+MG//vUv07p167AA5YYbbrDBQ6dOnRL6WP/1X/9lduzYYb7zne+YjRs3NviBP2bMGPPee++Z6dOnm/3339/ce++9NvgoKyuzwYhLr4OuO+aYY8xXX30V03Z8/vnn9nXQgSSR/PbaJus9gnA7d+60AceQIUPMpZdeagOPZcuWmZkzZ5rFixebl156yQYKUllZaY4//ngbpFx22WWme/fu5vHHHzc//vGPbSDxH//xH3V2r97jBQUFocutWrUKu/2EE04w//u//1vn526//Xb7NzR8+HBesgDgLwxNNnr0aHP00Ufb///sZz8znTt3Nrfddpt5+umnzXnnnRfYPRv5bSyZlixZEsqeeD9wIz3xxBM2UNK3Sh3wRR/gylzpQ//RRx8N3VcfzAcccIDJzs6OORty1VVX2YPJvn37WnxILSgUJNbU1Nj3R0u+R4IoNzfXLF261Hz3u98NXXfxxRfboSE3SBkxYoS9/oEHHjDr1q2z15188sn2ukmTJtn345VXXmnf7/p9XrpOQXp9Dj30UHuKDCp//vOf28dQEAT/Y4gHCeN+uHzyySf2/Le//a39gFLgorRtcXGxPdB66cBcXV1tHn744VD6NXKYQ0MbbvaiY8eO9puZvqE15M4777TfqrzDMv/93/9tf/+0adNC1+mA3L59e3P11VdHrS/QuTIWomyRu42ffvpp2ONpGEPBQJs2bcxRRx1lnn/++Zj22UEHHRT6JtkQ7bdu3bqZs846K3SdhnoUpCgg3L17d+h6pdQVnMTq1Vdftb//d7/7nYnH2rVrzdixY+2HvQ7YBx54oDn33HPN9u3bY3pt//GPf5iLLrrIPi93v/3hD38Ie4xXXnnF/pyGrX75y1/ax1KWR0MHGzZsiGt7RMHX6tWrG33/uNuvYUt9i9e2aRvd1zWyBkVZsMsvv9wegHU/ZQy+//3vRx2C83rhhRdstlEB/d69e028AZNeM22bnq/24yWXXGL++c9/hu5z2mmn1TlQu4YOHRr6guH64x//aP9O9fdaWFho91/kfo6FAgpvcOI688wz7flHH30Uuu61116z72X380P0/tV7e9OmTTaIj+Q4js286DxWzzzzjH2dxo0bF/fzQWqQQUHCfPzxx/ZcAYnccccd9kCiDwR985w3b56tt1i4cKEdrnC/7Sv7oiEO1VfIt771rbDfqw8qBQelpaX2A//3v/+9PQBoeKQ+w4YNsx/gGnrSh7T7QagPPp273n33XVNVVWVTwtEoIPjb3/5mHnvsMZsedr+16QPVpcd48skn7bczBTsKjnSgXL9+fWhfNJe2U+PykYGH9tvs2bPtNg4YMCDu36sAberUqfY1iOfn9XqOGjXKBkb6eQUFCjj02iooVCDZ0GurdL6+IbtBgPbnc889ZyZMmGAPPDrYR6uPUSC5efNme2DWN/AVK1bYg2ks2yN33323Ha57+eWXY6rN0VCEhhu0jXrt6ysO1TCGgjzdr1+/fnZoTe8LHYj1ukWjbVMm4JxzzrGBWeQwRWMUjKjWQgH7f/7nf9ovBnp+eq8oe5GTk2N/9wUXXGCWL19uh/xcn332mXnzzTfNrbfeGraPr7vuOvv3ptdty5Yt5q677rJ/G/qdiRjeVMAh3uyHXjO9hpHcYWINVyrY81LQpb9bBasaPtSXDwVoDVGgqcfxBvnwOQeI05w5c/S1xXnxxRedLVu2OBs2bHDmzZvndO7c2WnXrp3z+eef2/vt3Lkz7Odqamqc/v37OyeffHLY9fn5+c748ePrPM7MmTPt41x00UVh15955pn2sRqyb98+p0OHDs4vfvELe7m2ttb+zI9+9COnVatWzo4dO+z1t912m5Odne3885//DP2sHlOP7br11lvtdZ988kmdx9H1ubm5zrp160LXvffee/b6u+66y4lHffvBvS1yP8izzz5rH+v555+P+nNHHXWUc+KJJ9b7mHfffbfTsWNHZ/Pmzfay7qufacy7775rH3f+/PlNek4TJkxwevTo4Xz55Zdh15977rl2e9z3zssvv2wf54ADDnAqKytD93v88cft9XfccUdc2+O+p/R7G6P76b2xatWqqLd53yPa5smTJzf4+7z79s9//rOTk5PjXHzxxfa92hjtw4MOOih0+bXXXrPb8Mgjj4TdT+8D7/Xbt2932rRp41x55ZVh95s1a5aTlZXlfPbZZ/byp59+av8ufvOb34Tdb+XKlU7r1q3Dro/clniMGDHC/l16/96mTp1q97O2IfK9oOcyZcqU0HW/+93v7GU9vyeeeMK57LLL7Pb16dPHPtf6fPXVV/bv9Mc//nGTthupwRAPmkzfYPXNV0MKSgWrhmLBggW2/kG834qUdlaqXZmNxtLe0b6deul36BuqvmnXR5kGpZg1fCH6Jqufueaaa2xaWAV7omyKhmaa8+1Q+8Gb9Rk4cKDp0KGD+fvf/24SRePnGjqI5NZC6PZ4aX/MmDHDfmv2ZoRi4WYk/vrXv8Y0XOKl/f/nP//ZnH766fb/GnZxT8qC6H0S+R5RFkDZKZcyDz169LBF2fFsj4Zl9Jixzmw68cQTbUakMXr/vPXWW+aLL75o9L7KximzoQyI6i/iGY5zqRZJz1mZBe/+0/CM/g6VIRK9D1UrpiyQdzhEQ2bKYKn+SZQBVMZR2RPv71MmSgXY7u9rbsH0iy++aG655Zawvzdla5Q90mOrzkqZWGVL9VkS+d5WEa2yOiqcVZZSmTQNIWp4T0Xj9VF2S1k2hneChQAFTXbPPfeYRYsW2Q+vDz/80B6QdYDxprD1IaiDqMazdRBU9b23JiAW7oeoa7/99rPn3rH2aBTIKD2sDzgFIjqgKd0+aNCg0DCP0vC6X3NEbp+7jY1tXzwU7HnrTFzulM1oKfLGXHvttfZ10ZBIvDTkploeDbcpXa/XXe+HWF5bDR1o2EVDU3pPeE8arhAN43h5ZymJhnsOO+ywUC1Qc7ansecZi1mzZtnZawrWNaSlQChagKphGE0B18FVB9pY6o+i0QFZz01DnZH7UEMf3v2nYEh1JG5QrgBAfxe63vv7FMBoP0f+PgX3ka9HvBQQ6f2mITwVwHopoFeRt7bruOOOs6+rhkndmqiGisdFwYoCKQU/DQ3v6L2uYA3BQQ0KmkwfxJFFdi4FAKo/0fi1vtkoONCY+Jw5c8JmnMSivrH5xgrkNHVxz5499oNZ2+MGIjrXZRVL6mDZ3AClqdsXD+2/aNOQ3et69uwZ1+/TAUkBgg4C3m/9Cni0z3Tg17dvfajXR+P+KnpVka6KPVUHoW++qm1QgWp99E1ddKAeP3581PvooBWvpm5PQ2IN/PTtX+8jfevXY6u2QzVSykx4D4p6Hd3MzzvvvFPv309jtA8VnNTXz8ObEVOmSvUcyqIoq6hzZW1UD+b9fQqWVAcU7f3cWJDQEH2JUQZMdWf3339/1PsoI6bPC00BVl2UvkioQFo0U60xCgy3bt0a9TbVgunvXXVQ+gxCcBCgICmUwlfmRCl379CEApRITf0WGUsApdkE+nDSyZ2No6DpwQcftNMa3csNSdb2xWPw4MH2OehA4h0S0LCCDj6xfIh7qYBUv0sHcZ2iZQ6UTm9sZo8Ka3XSt2Ol5/UNWAchNeSqb9/p4KnhGh2I3KmmsQRUkcGfpqZGBjKNbU8yKfBQobROyjjoIKvCU2+Aor8JZRY1Y+WUU06xM1Q0CydeGlJUxkDPr7EgSoWkKhTXsJDaACiboWDKG9Tq92mf6nWP973UEL0/NXNHgZgCo4Z6x+hv1VvI62ZEGnuPaLsVUH/729+ud0hN92F4J3gY4kFS6FuYDk46CLn0IRKtq6g+QJPRpVUHA33g6QNK36K8GRQN+yiNrA9mHVga4jYvS8Y2xkrfMDXzRd/IXaoR0EFH35Cj1ac0RHU3+rYfedLBUkNW+r/S8fVR/U/ktFgFBgqevENR0V5bvTc0xKEgVsMikZTVivQ///M/doqot6ZA2SP34B/r9iSD3uORQ0nKbigAiPbYqh1R4O5ORXZnv8VDGRs97k033VTnNu2HyH2u4RxlyjQEpiyFd3hHNLNFr4tmOEVm/nQ51oZ/XhoaUtZEM58UlMUzDKmAVIGlAitvwBTtvaFhY12vgC8aZWz1nlZGFcFCBgVJoQ8mfVvTh4bGiPWNUjUBGl9+//33w+6rwj59W9L99aGub3HHHntsQrZDwYiK8nRQcKfR6sBwxBFHmDVr1jTYWt67ffKrX/3KFgMrTaygIBFdV9WbQQcM0dCK9o37bV8pbzdDoABF9Tyq0VC9j9tJVgcpHVS8VBjsFgfrg1u9SNzfqWyRTvr5aN1d3YxJY51fNf1WU2o1TKADiA6KmlbsBh+NvbZ6TVS7pP+rgZcKUZWiV3Gs7h+ZrtdQkw4wev4K1LSdei/pZ+PZHtWGxDPNOBYKnDSEpNdI9U0aDtFz0NReDTtFo/2voQ89J2UIVAvlFpfHWryrIlsNYWmq9ciRI+37Ugd2Ba2a4u829JNTTz3VZq3UkC9yn4gCdb1HSkpK7BcJvf66v2pmFKxqeEQ/G88+UR2Q6rCUuXz22WfrPJ76sLj0+rtLPugxFXToNY8cElLfIAVX+lvWFxDtN7UvUIZR+yOSAmD9Tak43g+ZUMQpRbOHkAbTjJcvX97g/R566CE7/U/THPv27Wt/zp3m6bV69WrnhBNOsFOUdZs7LdW9r6YyR3v8aNN+65uGO3r06LDrf/azn9nrtY2NTSGVm266yU511XRI72Pr/9Gml2oaZn1Thr10H/2OaCc9T6+tW7fa6bmaLp2Xl2enrUZ7Ddz9Fu0U+bwixTrN+O9//7ud9vytb33Ladu2rVNYWOicdNJJdup5LK+tVFRU2H3Xq1cvO+W2e/fuzvDhw53Zs2eH7uNOM37ssceckpISp2vXrvZ3jRkzJjRFNp7t0XRbTa/96KOPGn2O9b227m3uvty9e7czffp0Z9CgQU779u3t1Gr9/957721032p6uqZbH3nkkXXe5171Te3VviouLrb7RI89YMAAO7X+iy++qHPfcePG2e3WVN/6aPrz8ccfb5+DTvq71T5Ys2ZNo9vipb+P+t6Dke8Dd0qx3geaCtyzZ0/n0ksvte+PSPq77devn32ues8cdthhztVXXx02Bd3rmmuusY/3/vvvN7i98Kcs/RNvUAMALUGFkloU0dviv7l1SfoWHm0hOgD+whAPgIygOhUNp6lvBgD/I0ABkBE0bTrZBbMAEodZPAAAwHeoQQEAAL5DBgUAAPgOAQoAAPCdQBbJqkW3uiKqkRDNdwAACAZ1NlEjPzVubGwl70AGKApOtDgUAAAIHq2w3dginoEMUJQ5cZ+gpg4CAIBg9CNSgsE9jqddgOIO6yg4IUABACBYYinPoEgWAAD4DgEKAADwHQIUAADgOwQoAADAdwhQAACA7xCgAAAA3yFAAQAAvkOAAgAAfIcABQAA+A4BCgAA8J2UBij33HOPOfjgg03btm3Nsccea95+++1Ubg4AAMj0AOVPf/qTmTZtmpk5c6YpLy83gwYNMqNGjTKbN29O6TLQ1TXV9qT/AwCA1MhyUnQkVsbkmGOOMXfffbe9XFtba1c4nDp1qrnmmmvC7rt79257ilwNcfv27QldLFCBSUFpgf3/4O6DTdnEMpOdxSgYAACJoON3x44dYzp+p+ToW1NTY8rKysyIESO+2ZDsbHt52bJlde5fWlpqn5B7UnCSbCs2rTDFs4vJpAAAkAIpCVC+/PJLs2/fPtOtW7ew63V506ZNde5fUlJioy33tGHDhqRsV15OntlRssP0KewTClKq91Qn5bEAAED9AjF+0aZNG5sK8p6SISsryxTkFpjyS8pD1w2bM4wsCgAAmRCg7L///qZVq1amoqIi7Hpd7t69u0m1/Jx8W4PiZlF27tmZ6k0CACCjpCRAyc3NNcXFxWbx4sWh61Qkq8tDhw41qaZMymsXvha67Bhm9AAAkBFDPJpi/OCDD5qHH37YfPTRR2bSpEmmurraXHjhhcYPskxW6P9FDxSZWqc2pdsDAEAmaZ2qBz7nnHPMli1bzIwZM2xh7ODBg83zzz9fp3A2VVQwq2EeDfGs3brW9L27r61N8QYusfwOZWMAAEBA+qC01Dzq5lDWRIGJApSmUICjoaJ4ghoXwQ0AIN3Ec/wmQIkhSFE/FGVSWhKN4gAA6YYAJcGUZIpnJo+KajU9ublBjfqxeIeVyKoAAIKMAMUH4g1qQj9nHFuUG21YiawKACDICFACrqFhJW9WhYwKACBICFDSgDcDU19Wpb4iXAIXAIAfEaCkoXiKdY/rddzXgQtTnAEAAQ1QUtYHBfHJzso25RPLbValsSLcpRuWmi07t9iW/S6yKgCAIGGacUBFK8LVysvdfhu90R1ZFQBAkDIogVjNGHVp+CY/Nz/s1CWviw1E6suqKICpL9iprqkOnQLYuw8AkGYY4kkj7iKH3syKN6uiQtvIdv3Rhou8xbcMDQEAUoEhnjSnbEjR7KImN41jaAgAkCgM8SAsq1I2scxmRRqi2yuvqaxzPw0NNaXhHAAAzcEQT4bNAKqPO5Tj3s87NKT/M9QDAGhJBCgZVlTblPspUKHNPgCgJTGLB1EpY+KdEaQaFjWKY4YPAKAlEKCgwRlBO0p22PV/3CBFDeCYigwASDYCFDQYpBTkFtipyd7hnoLSAjs1mWwKACBZCFDQKLXMj2wA57bTp8EbACAZ6IOCuFrr004fANBU9EFBwrmzexprpx+ZVaF9PgCgKcigoNkLFTaUVXExTRkAUMligWjJhQobyqq4NAOo7919TVVNFdkVAECjyKAgKVmV0PXGsYsUrt26tt6fZb0fAMgMlWRQkOqsinvSNOXVU1Y3uBYQ6/0AACLR6h4pWwsoltoVAEBmIkCBL9YC0lAQAAAuGrXBF+hMCwDwIkBBShckdGtTNMsnWpEtACAzEaAg5QsSemtSWN8HACAEKEipLJMV+r8KZhnqAQAIAQpSPszjbfJWX7t8MisAkFlo1IaUU/ChoKShKcc0cwOA4KNRGwJXi9JYu3yauQFAZqEPCnxVMNtQMzd6pQBA5qAGBf5ul5/zTXM3CmgBIHMQoCBQvVKUUQEApD8CFASqVwpZFADIDAQo8D0N85BFAYDMQoAC3yOLAgCZhwAFgcyiuM3caOAGAOmJAAWBzKJo6nFBaYEpml1kap3alG4bACDxCFAQqCxKZDM3ZVOKZxeTSQGANEOjNgSymZuathU9UGTWbl1rgxRdp74pAID0QAYFgWzmVpBbYMovKQ9dT5dZAEgvBCgIrCyTFfq/sinUogBA+iBAQVp0mdVQD7UoAJA+CFAQ6OGesollpk9hH3uZ6ccAkD4IUBBo2VnZYbUo3unHVTVVzO4BgIAiQEHaTj9uX9qePikAEFAEKEib6cdVJVVmR8mOUF2K0CcFAIKJAAXpN/14YrkNVLy1KeqTAgAIDgIUpGWwEtknBQAQLAQoyIg+KQCAYCFAAQAAvkOAgrRF+3sACC4CFKQlx3HMsDnDUr0ZAICWClBeffVVc/rpp5uePXvaYsSnnnqqzoFhxowZpkePHqZdu3ZmxIgRZu3atWH32bp1qxk3bpzp0KGD6dSpk5kwYYKpqqpq6nMA6qjeU21n74imHastPgAgjQOU6upqM2jQIHPPPfdEvX3WrFnmzjvvNPfff7956623TH5+vhk1apTZtWtX6D4KTlatWmUWLVpkFi5caIOeiRMnNu+ZAPVkT1796as2mAYABEeWo0/zpv5wVpZZsGCBOeOMM+xl/SplVq688kpz1VVX2eu2b99uunXrZubOnWvOPfdc89FHH5l+/fqZ5cuXm6OPPtre5/nnnzennnqq+fzzz+3PN6aystJ07NjR/m5lYQCv6ppq2+7eNajbIDvlWG3xAQCpE8/xO6Gf2J988onZtGmTHdZxaUOOPfZYs2zZMntZ5xrWcYMT0f2zs7NtxiWa3bt32yflPQH10XCOt/X9exXvsdIxAARMQgMUBSeijImXLru36bxr165ht7du3doUFhaG7hOptLTUBjruqVevXoncbKRp63u6yQJAcAUi511SUmLTQe5pw4YNqd4k+BzdZAEg2BIaoHTv3t2eV1RUhF2vy+5tOt+8eXPY7Xv37rUze9z7RGrTpo0dq/KegFjQTRYAgimhAcohhxxig4zFixeHrlO9iGpLhg4dai/rfNu2baasrCx0n5deesnU1tbaWhUgmVOPm1ETDgBoQa3j/QH1K1m3bl1YYeyKFStsDUnv3r3N5Zdfbn7961+bPn362IDluuuuszNz3Jk+Rx55pDnllFPMxRdfbKci79mzx0yZMsXO8IllBg/QVN1+280Wz6o+hWnHAJBmAco777xjTjrppNDladOm2fPx48fbqcS/+MUvbK8U9TVRpuT444+304jbtm0b+plHHnnEBiXDhw+3s3fGjh1re6cAyZrRs3TDUntZ51t2bjH5Ofmh2wlWACDN+qCkCn1QEA+9xRWUKIMSSV1myyaW0SMFANK5DwrgR8qQdMnrEtYbxaV2+H3v7mtqndqUbBsAIDoyKMioTMrOPTu//r9xTNEDRWbt1q/XiepT2MesnrKaTAoAJBEZFKCeTEp+br49FeQW2IBEgYkoUCmeXcwsHwDwCYZ4kLG0No83SNFwj2pVtJZPAEuzACCtEKDAZHqQooUEXSqk1UKDRbOLqEsBgBQiQEHG05TjyAJat3i2qqaKjAoApABFsoCngDayeNY7HVkN3hTM0DcFAJqGIlmgiQW0bvGsApLIjEr70vZ26EdZFWpUACC5yKAAjWRUhs0ZZgOUaBkVLUZIN1oASHwGhQAFiCFY0UKD0QIVYX0fAIgNQzxAgod/NPRTPrHc7CjZUWf4R+v7KIABACQOs3iAJgQqVSVVpuKqitBtyq5QlwIAiUOAAjSxoFbr+7jZFG+TN++JoAUAmoYaFKAZNKNHs3vqQ30KAHyDGhQghU3evKhPAYCmad3EnwPw7+EeTTd2V0l2qWhWbfPd+hTVrdDgDQBiRw0KkMBVkt1TZH0Ks3wAID4EKEASMysuZvkAQHwIUIAk1qd4syiRw0AAgPoRoAAtlEVR23wAQGwIUIAk0lo9Lq2SzEKDABAbAhQgibSQoDvMs3brWtszhXoUAGgcAQqQ5GGesollYev3qDcK9SgA0DACFCDJsrOybR8U79o9AICGEaAALdUrJSeffQ0AMSJAAQAAvkOAAqQAU44BoGEEKEAKMJMHABpGgAKkYMoxnWUBoGEEKECKOstqAcHqmq9PjkOXWQDwah12CUCLdZbt9ttuof8rs6LgRTN9FMgAQKYjgwK08DDPcb2Oq3O9hnzUZbZo9tft8MmqAMh0WU4Ac8uVlZWmY8eOZvv27aZDhw6p3hwgLvqTczvJajaPCmYVoERSIKOsChkVAOkinuM3GRQgFU3bcvPtqSC3wHaZ3VGyI6wdvtASH0AmowYF8EHA4gYqyqyoeNZbnwIAmYgABfBZZsWLhm4AMhVDPICPFT3wddFsAEvFAKBZCFAAHzd0W7t1bWh2T61Tm+pNA4AWQ4AC+HCop2xiWVjRrGb59L27L0EKgIxBgAL4UHZWdmh2T5/CPqFsioIUt08KvVIApDP6oAA+p6EdBSYKUCLRKwVAkNAHBUizbMrqKavr9EkReqUASFdMMwYCNOTjdqD19krR/1VYS8dZAOmEGhQggB1otaigS4GK2uUzFRlAOiFAAdJg0UGGegCkGwIUIKDZFC0kWHFVRao3BQCSghoUIMhDPp6hHtWiRKI2BUBQEaAAaSLaAoOa+aNMiwIZimgBBAlDPEAa1aJEUgdatcqniBZA0JBBAdKgFsWdfuxdBVlBiQIUt4hWQ0AFuQUp2lIAiA8ZFCCdph//+6RARH1TvEW0WhmZBQcBBAUBCpDGgUuXvC5hKyMXzy6mXwqAQCBAATJgZWR3wUEN+UQOBwGAHxGgAJnQJv+S8lRvBgDEhQAFyABZJivVmwAAcSFAATKMZvOwbg+AtApQSktLzTHHHGPat29vunbtas444wyzZs2asPvs2rXLTJ482XTu3NkUFBSYsWPHmoqK8Hbc69evN2PGjDF5eXn290yfPt3s3bs3Mc8IQINYXBBA2gUoS5YsscHHm2++aRYtWmT27NljRo4caaqrv2mxfcUVV5hnnnnGzJ8/397/iy++MGeddVbo9n379tngpKamxrzxxhvm4YcfNnPnzjUzZsxI7DMD0ODiglt2bjHVNWRTAPhTltOMXO+WLVtsBkSByAknnGC2b99uunTpYh599FFz9tln2/usXr3aHHnkkWbZsmVmyJAh5rnnnjOnnXaaDVy6dfu6Nff9999vrr76avv7cnNzG33cyspK07FjR/t4HTp0aOrmAxlFf+oKSiJb4itwUbM3WuEDSLZ4jt/NqkHRA0hhYaE9Lysrs1mVESNGhO7Tt29f07t3bxugiM4HDBgQCk5k1KhRdqNXrVoV9XF2795tb/eeADStL0pka3y3yywA+EmTA5Ta2lpz+eWXm+OOO87079/fXrdp0yabAenUqVPYfRWM6Db3Pt7gxL3dva2+2hdFXO6pV69eTd1sIKO5rfGrSqroMgsgPQMU1aJ88MEHZt68eSbZSkpKbLbGPW3YsCHpjwmke2t8uswCSLsAZcqUKWbhwoXm5ZdfNgceeGDo+u7du9vi123btoXdX7N4dJt7n8hZPe5l9z6R2rRpY8eqvCcAzUOXWQBpE6CoyE7ByYIFC8xLL71kDjnkkLDbi4uLTU5Ojlm8eHHoOk1D1rTioUOH2ss6X7lypdm8eXPoPpoRpKCjX79+zX9GAOLqMqtW+ADgN63jHdbRDJ2nn37a9kJxa0ZUF9KuXTt7PmHCBDNt2jRbOKugY+rUqTYo0Qwe0bRkBSLnn3++mTVrlv0d1157rf3dypQAaDn60nHC3BPY5QCCHaDcd9999vx73/te2PVz5swxP/3pT+3/b7/9dpOdnW0btGn2jWbo3HvvvaH7tmrVyg4PTZo0yQYu+fn5Zvz48ebGG29MzDMCEDMtHKgFBEWrHqtfCgAEvg9KqtAHBUgMNWorKC34+u/qmkrTvk17di2A4PdBAZA+NNQTwO8rANIUAQqQwTSko6Ed0VCPhnwAwA8IUIAM5jZuAwC/IUABMlyWyUr1JgBAHQQoAADAdwhQAABAsPugAEhv3lWNVUCrGhUASAUCFAAh3X77zUrjmt2jAlq3RoWABUBLIkABMpwCj+N6HWeWblgadr2mHbcvbR81YCFYAZBsdJIFYBu0uT1QHOOYYXOGhVrgR6NgRYsMarFBAEhGJ1kCFABNClj6FPYx5ZeUk1EBEDMCFABJCVgUrBQ9UGTWbl0bdjsZFQCxYC0eAAml2Tz5ufmmILfArJ6yOtQe36XsSvHsYtbyAZAwFMkCiIvqTsonltfJqChI2bJzi+mS14XpyQCajQo3AM3KqKgOxTtNWfUqrIoMoLkIUAA0S35Ovp2m7NJ0ZVZFBtBcBCgAErIicsVVFexJAAlDgAIgMUM+OflhLfMZ5gHQHAQoABKOWhQAzUWAAiChLfNd1KIAaA4CFAAJQS0KgEQiQAGQtFoUAGgqAhQAAOA7dJIFkDSazeOtUVGGBQBiQYACIKmzeVwqoFW/FIIUALFgiAdAUmfzeGf1eDMqANAQMigAkjKbx213r6DEzaRonR4tNEgWBUBjyKAASNpigjppdePB3Qfb67XiMev0AIgFAQqAFsmouJRRqa6hFT6AhjHEAyDpssw3s3fc4R5lVWzR7L9vY5YPAC8CFAAtVjirQlmXhnval7YPXY4MWCJ/nroVILNkOQFccrSystJ07NjRbN++3XTo0CHVmwMgBvqoUf2JYxxbLKsAJVZu8KIutQQqQHDFc/wmQAGQsmDF/j+OgIVeKkDmBCgM8QBI2Swfl6YeR5vdExm8uCske38WQHoiQAHgu4DFS8HLlp1bQsW1CloApD+mGQMI1ArJyqgEsHQOQJwIUAD4nmbx0OwNyCwEKAAC1+wNQPqjBgVAIHj7o7iLDtIfBUhfBCgAAieyGy39UYD0wxAPgEB1o/Vyu9EWzS4yVTVVFM8CaYRGbQDSphutMiplE8tMdhbfvYCgN2rjrxhA4PqlFOQW2P4oO0p2hGb3iAKW4tnFZFKANECAAiCwwYo3UOlT2CcUpLhFtACCiwAFQHoEKpeUh66jmRsQfAQoANKCZvLQzA1IHwQoANICzdyA9EKAAiAtm7kBCDYCFABpSYWyLCoIBBcBCoC07TZLsSwQXAQoANK22+zSDUuZcgwEFAEKgLQrlK24qiJ0HVkUIJgIUACkXZDSJa8LU46BgCNAAZD2U461dg+AYCFAAZD2U44Z5gGChwAFQNoWzHo7y7I+DxAsBCgAMmKYp+iBIlPr1KZ0mwAkKUC57777zMCBA02HDh3saejQoea5554L3b5r1y4zefJk07lzZ1NQUGDGjh1rKiq+qaaX9evXmzFjxpi8vDzTtWtXM336dLN37954NgMA4l6fZ+3Wtabv3X0JUoB0DFAOPPBAc8stt5iysjLzzjvvmJNPPtn88Ic/NKtWrbK3X3HFFeaZZ54x8+fPN0uWLDFffPGFOeuss0I/v2/fPhuc1NTUmDfeeMM8/PDDZu7cuWbGjBmJf2YAMp6yKGUTy0yfwj5hQUpVTRVdZgGfy3Ka2Qu6sLDQ3Hrrrebss882Xbp0MY8++qj9v6xevdoceeSRZtmyZWbIkCE223LaaafZwKVbt272Pvfff7+5+uqrzZYtW0xubm7Ux9i9e7c9uSorK02vXr3M9u3bbSYHABqioR0FJgpQXGropiEgBTEAWoaO3x07dozp+N3kGhRlQ+bNm2eqq6vtUI+yKnv27DEjRowI3adv376md+/eNkARnQ8YMCAUnMioUaPsBrtZmGhKS0vtE3JPCk4AIFbZWdlm9ZTVoeEet8vslp1byKQAPhV3gLJy5UpbX9KmTRtz6aWXmgULFph+/fqZTZs22QxIp06dwu6vYES3ic69wYl7u3tbfUpKSmy05Z42bNgQ72YDyHAKUsonlod1mWW9HsC/Wsf7A0cccYRZsWKFDRSeeOIJM378eFtvkkwKhnQCgER0mdXwjjIo3vV6CnIL2LlAkDMoypIcdthhpri42A69DBo0yNxxxx2me/futvh127ZtYffXLB7dJjqPnNXjXnbvAwDJxHo9QIb0QamtrbUFrApYcnJyzOLFi0O3rVmzxk4rVo2K6FxDRJs3bw7dZ9GiRbZQRsNEANBSQcr+efuHLquR2849O9n5QFCHeFQLMnr0aFv4umPHDjtj55VXXjF//etfbfHqhAkTzLRp0+zMHgUdU6dOtUGJZvDIyJEjbSBy/vnnm1mzZtm6k2uvvdb2TmEIB0BL+teef4X+r+JZdZ4FENAARZmPCy64wGzcuNEGJGrapuDk+9//vr399ttvN9nZ2bZBm7IqmqFz7733hn6+VatWZuHChWbSpEk2cMnPz7c1LDfeeGPinxkAxIjpxkAa9kHx+zxqAIimuqbaFJR+XRhbVVJl8nPz2VFAOvRBAQAA8M00YwBIN96VjlWLQndZIPUIUABkPDVsc9ECH/AHhngAZCRlShSMRFLjNqYcA6lHBgVARjdsc4MRDfO4mRTHBG7uAJB2yKAAyOggRbN37Cnnm1k8w+YMYxFBIMUIUADg30M+7mrH6izrLZwF0PIIUADAM+TjIosCpBYBCgD8m4Z5vFkUimWB1CFAAYB6sigAUocABQA8skwW+wPwAaYZA0A93EJZussCLY8MCgDUQ31RtKAgBbNAyyNAAYBGOsyquyzTjoGWRYACAFEKZatKqkzFVRWh68miAC2LAAUA6ukw2yWvC9OOgRQhQAGAGKcda5inuqaaNvhAC2AWDwDEOO3YXUxQzdwUuHhvY6YPkFgEKAAQQ9GsCmVd6jLbvrR92P3coEXdaJV5AdA8WY7jBG5d8crKStOxY0ezfft206FDh1RvDoA0p49Jtb13jGOLZRWg1EfBjM2uEKQAzTp+k0EBgBiLZqV8YnnYGj2RQYs7Jbkgt4D9CjQDRbIA0IRgxT0pEFHQ4p2SXPRAkamqqaKgFmgGAhQASEDQ4p2SvHbrWlujQhdaoOkIUAAgQUFK2cSyUJDi0pCPd0gIQGyoQQGABMnOyg7VqKgOxZ2WDCB+BCgAkKSCWgBNxxAPACSZsikB7OgApBQBCgAkmYZ6imYzsweIBwEKACSxA21k91nN7FGwUuvUst+BBhCgAEASFxrcUbKjzsweBSvFs4sZ9gEaQJEsACQxSHEbubmt8tXETX1SFKToOgpqgejIoABAC83sscHKJeXsbyAGBCgA0IKyzDcrHTO7B6gfAQoApAize4D6EaAAQAtidg8QGwIUAGhBzO4BYsMsHgDw2eyeLTu3mPycfJtt0X2BTEQGBQB8NrtHtSk0dEOmI0ABAB9QxsTbeVZo6IZMxhAPAPioNoWGbsDXyKAAgE/Q0A34BgEKAPi8oRuQiQhQAMDnNMsHyDQEKADgc8PmDGPlY2QcAhQA8CH1QBncfbD9v9sbxXHIpCBzEKAAgI9n9Xh7o5BJQSYhQAGAgPRGWbphKZkUZAwCFADweRal4qqKOisg1zq1Kd02INkIUADA50FKl7wuYZkUOswiExCgAECAVkDuU9gnFKSo6yyQrghQACBIKyB7FhUE0hkBCgAECB1mkSkIUAAAgO+wmjEABFT1nupQUzcNAQHphAwKAASUphwXlBbQwA1piQAFAAJE2RLvlGO3gRszepBumhWg3HLLLTatePnll4eu27Vrl5k8ebLp3LmzKSgoMGPHjjUVFd80GZL169ebMWPGmLy8PNO1a1czffp0s3fv3uZsCgBk1JTjqpKqsAZuGu6prvn6xJo9yOgalOXLl5sHHnjADBw4MOz6K664wjz77LNm/vz5pmPHjmbKlCnmrLPOMkuXLrW379u3zwYn3bt3N2+88YbZuHGjueCCC0xOTo65+eabm/+MACADgpT83Pw6wz0uLTKoIMad8UONCjImg1JVVWXGjRtnHnzwQbPffvuFrt++fbt56KGHzG233WZOPvlkU1xcbObMmWMDkTfffNPe54UXXjAffvih+eMf/2gGDx5sRo8ebW666SZzzz33mJqamsQ9MwDIwOEet4lb+9L2tj5FJ7XGr6qpIrOC9A9QNISjLMiIESPCri8rKzN79uwJu75v376md+/eZtmyZfayzgcMGGC6dfsm2h81apSprKw0q1ativp4u3fvtrd7TwCQ6bzDPTqp06yyJ/UFLKyGjLQe4pk3b54pLy+3QzyRNm3aZHJzc02nTp3Crlcwotvc+3iDE/d297ZoSktLzQ033BDvpgJAxg33lE8sDxXMOsaxQYkCFO9qyFrbh2nJSKsMyoYNG8xll11mHnnkEdO2bVvTUkpKSuzwkXvSdgAA6g9YdLKt8SeW11kNmUwK0i5A0RDO5s2bTVFRkWndurU9LVmyxNx55532/8qEqI5k27ZtYT+nWTwqihWdR87qcS+794nUpk0b06FDh7ATAKBpqyEzLRlpF6AMHz7crFy50qxYsSJ0Ovroo23BrPt/zcZZvHhx6GfWrFljpxUPHTrUXta5focCHdeiRYts0NGvX79EPjcAgKdWxZtJAdKqBqV9+/amf//+Ydfl5+fbnifu9RMmTDDTpk0zhYWFNuiYOnWqDUqGDBlibx85cqQNRM4//3wza9YsW3dy7bXX2sJbZUoAAEka+snJD+ubwvRjZFQn2dtvv92cdtpptkHbCSecYIdtnnzyydDtrVq1MgsXLrTnClx+8pOf2D4oN954Y6I3BQBQD9WiMP0YfpblBLDloKYZqwmcCmapRwGA2OjjXgWyqkHx8jZ2I6sCvxy/CVAAIMOCFA3veKcfe6mY1gYrrI6MFAcoLBYIABlEgYc7/ThaYzdm+CDwa/EAANIjUFFjN2VV3PV8KKCFH5BBAYAMFmrs5pnhQzM3+AEBCgCgzsKDDPUg1QhQAABRm7lpLR8gVQhQAABRm7k1Z80eO1uopjp0CmBHC6QYRbIAgLChHs3s0RRknbT6sTdoce/jnYas4MNdQTnaKspCrxXEiz4oAIAwVTVVpn1p+3r3ijfYiBaMNMb780JzuMxRSaM2AECiO87GS4HIqz991Zww94QGAxiaw2WOSgIUAEBzRA7b2OsayJZEZkW8mRH3dzX082oap74sSG+VBCgAgJYKXOIZpvH+vLc5nAIcNY2jxX56q4wjQKFIFgAQd2O3RPx8ZEGuApfm/G6kF6YZAwBS2nsFiIYMCgAgZbw1Kxry8WJ2T2YjQAEA+IJbj+Jidk9mY4gHAOCbNYC8NM05MquCzEEGBQCQ8joU78wg7+yeogeKTPkl5babLTN8MgsZFABASrkze9xTl7wudnaPrN261na1bc66QAgmAhQAgO8ClrKJZaEgxR3uidZ/BemLAAUA4DvZWdm2cVvFVRVhQz+sjJw5qEEBAPh36MezkrK362xkW/2GMF05mAhQAAC+n+XjXbhQXWcbWm05EgFNMGU5Aaw6iqeXPwAg2GJZbDCRIgMaMjCJw2KBAICMWqww6n0TFNAoYFHRrupi0DwEKAAAJDCg6VPYh34sCUCAAgBAMwMaBSxqFKdeLNGGfxj6SW6AQr4KAIAoTeMKcgvM6imrw/qxuAW6BaUFpmh2kamqqaKBXJIQoAAA0Eg/lh0lO8ICFW+w4gYq6tFCn5bEYRYPAAAJnE3EKsz1Y4gHAIAkDf9o6Ke+rIrQlj8xaNQGAEATghU3UHGLar2rMOv/QiFt0xGgAADQzKxKJDdQYbin6SiSBQAggW35vRjuaToyKAAAJCiboh4pGvLxDvegaQhQAABI4pCPZv0gfgzxAACQRJqSHMB1eVOOAAUAgCTUo7hTkNUvJdb1gPANAhQAAJJUj4KmowYFAIAk0IKCLrcvSkPomRKOAAUAgCSLZUaPhoTKJpbZ9X/AEA8AAC3WF6UhqlXpe3dfU+vU8oqwWCAAAMlfYLDB+xjHFD1QZNZuXWsv9ynsY8ovKbdDROk27BPPYoGsZgwAQIopa6LsiRukeId9VGzrrWcJctBCgAIAQACDlOLZxXaoJ11rVQhQAAAI8JCQYxzb4K2+YMU7DBSNX7MsBCgAAKRZ/YoTUavSEHdoKD8n31eBSjwBSvDyQwAAZNC6Pvn/PhXkFpjVU1aHOtQ2RJmX9qXtTdHsosDOCqJIFgCANJkZ5EQZGnKHg/yQTWGIBwCADA5gqvdU1xkO8sOwD0M8AABkqKysrKjDQd5hn6qaKlNdU+3rVZYZ4gEAIM2zKcPqmRHU0lkVMigAAMC42ZTyieVmR8mOOgW2blZFAYzfsiksFggAQAYFKjuj9FlZumGp2bJzi82k+KWHCkM8AABkIMdxbFASudKyFji07fWTEKQwxAMAABqkAKRLXpc6Ky4rm9LYAoctIa5Gbddff719Qt5T3759Q7fv2rXLTJ482XTu3NkUFBSYsWPHmoqKirDfsX79ejNmzBiTl5dnunbtaqZPn2727t2buGcEAABiouO4siVVJVWm4qrw43XgalCOOuoo8+KLL37zC1p/8yuuuOIK8+yzz5r58+fbVrZTpkwxZ511llm6dKm9fd++fTY46d69u3njjTfMxo0bzQUXXGBycnLMzTffnKjnBAAA4uxY66WZP5LKepS4AxQFJAowIqmv/kMPPWQeffRRc/LJJ9vr5syZY4488kjz5ptvmiFDhpgXXnjBfPjhhzbA6datmxk8eLC56aabzNVXX22zM7m5uYl5VgAAoMncuhRlViKDl5YS91o8a9euNT179jSHHnqoGTdunB2ykbKyMrNnzx4zYsSI0H01/NO7d2+zbNkye1nnAwYMsMGJa9SoUbZoZtWqVfU+5u7du+19vCcAAJA4ypZE1qOkUlwZlGOPPdbMnTvXHHHEEXZ45oYbbjDDhg0zH3zwgdm0aZPNgHTq1CnsZxSM6DbRuTc4cW93b6tPaWmpfSwAAJDcehRvgayClkAEKKNHjw79f+DAgTZgOeigg8zjjz9u2rVrZ5KlpKTETJs2LXRZGZRevXol7fEAAMhEWVHqUVIl7iEeL2VLDj/8cLNu3Tpbl1JTU2O2bdsWdh/N4nFrVnQeOavHvRytrsXVpk0b06FDh7ATAABIX80KUKqqqszHH39sevToYYqLi+1snMWLF4duX7Nmja1RGTp0qL2s85UrV5rNmzeH7rNo0SIbcPTr1685mwIAANJIXEM8V111lTn99NPtsM4XX3xhZs6caVq1amXOO+88O614woQJdiimsLDQBh1Tp061QYlm8MjIkSNtIHL++eebWbNm2bqTa6+91vZOUZYEAAAg7gDl888/t8HIV199Zbp06WKOP/54O4VY/5fbb7/dZGdn2wZtmnmjGTr33ntv6OcVzCxcuNBMmjTJBi75+flm/Pjx5sYbb+TVAAAAIazFAwAAWgRr8QAAgMwtkgUAAEgGAhQAAOA7BCgAAMB3CFAAAIDvEKAAAADfIUABAAC+Q4ACAACC3UnWLxzHCTV8AQAAweAet93jeNoFKDt27LDnvXr1SvWmAACAJhzHtYZf2rW6r62ttYsVtm/f3mRlZSU8ulPgs2HDBrvgIZKD/dwy2M8th33Nfk4nlUk6FirkUHDSs2dPu3Zf2mVQ9KQOPPDApD6GXhAClORjP7cM9nPLYV+zn9NJhyQcCxvLnLgokgUAAL5DgAIAAHyHACVCmzZtzMyZM+05kof93DLYzy2Hfc1+TidtfHAsDGSRLAAASG9kUAAAgO8QoAAAAN8hQAEAAL5DgAIAAHyHAAUAAPgOAYrHPffcYw4++GDTtm1bc+yxx5q33347da9MAL366qvm9NNPty2MtQTBU089FXa7JozNmDHD9OjRw7Rr186MGDHCrF27Nuw+W7duNePGjbOdCzt16mQmTJhgqqqqWviZ+Ftpaak55phj7FIPXbt2NWeccYZZs2ZN2H127dplJk+ebDp37mwKCgrM2LFjTUVFRdh91q9fb8aMGWPy8vLs75k+fbrZu3dvCz8bf7vvvvvMwIEDQ900hw4dap577rnQ7ezn5LjlllvsZ8jll1/Ovk6g66+/3u5X76lv377+fT9rmjEcZ968eU5ubq7zhz/8wVm1apVz8cUXO506dXIqKirYPTH6y1/+4vzqV79ynnzySU1ddxYsWBB2+y233OJ07NjReeqpp5z33nvP+cEPfuAccsghzr/+9a/QfU455RRn0KBBzptvvum89tprzmGHHeacd955vAYeo0aNcubMmeN88MEHzooVK5xTTz3V6d27t1NVVRW6z6WXXur06tXLWbx4sfPOO+84Q4YMcb773e+Gbt+7d6/Tv39/Z8SIEc67775rX7v999/fKSkpYV97/N///Z/z7LPPOn/729+cNWvWOL/85S+dnJwcu+/Zz8nx9ttvOwcffLAzcOBA57LLLuM9nUAzZ850jjrqKGfjxo2h05YtW3z7uUGA8m/f+c53nMmTJ4d2zL59+5yePXs6paWlSdnx6S4yQKmtrXW6d+/u3HrrraHrtm3b5rRp08Z57LHH7OUPP/zQ/tzy5ctD93nuueecrKws5x//+EcLP4Pg2Lx5s91vS5YsCe1XHUTnz58fus9HH31k77Ns2TJ7WR8s2dnZzqZNm0L3ue+++5wOHTo4u3fvTsGzCI799tvP+f3vf89+ToIdO3Y4ffr0cRYtWuSceOKJoQCF93TiAhR9AYzGj/uYIR5jTE1NjSkrK7NDDt4FCXV52bJlyUldZZhPPvnEbNq0KWwfa8EoDaW5+1jnGtY5+uijQ/fR/fVavPXWWynZ7iDYvn27PS8sLLTnei/v2bMnbF8rjdu7d++wfT1gwADTrVu30H1GjRplVzBdtWpViz+HINi3b5+ZN2+eqa6utkM97OfE0/CChg+8711hXyeOhtU1DH/ooYfa4XQN2fh1HwdyNeNE+/LLL+2Hj3eniy6vXr06ZduVThScSLR97N6mc41perVu3doeeN37IFxtba0dpz/uuONM//79Q/sxNzfXBnsN7etor4X3tcLXVq5caQMSjc9rXH7BggWmX79+ZsWKFeznBFLwV15ebpYvX17nNt7TiaEvhHPnzjVHHHGE2bhxo7nhhhvMsGHDzAcffODLfUyAAgT8G6c+XF5//fVUb0ra0oe5ghFlqp544gkzfvx4s2TJklRvVlrZsGGDueyyy8yiRYvsJAUkx+jRo0P/V/G3ApaDDjrIPP7443bigt8wxGOM2X///U2rVq3qVCvrcvfu3VP12qQVdz82tI91vnnz5rDbVR2umT28DnVNmTLFLFy40Lz88svmwAMPDNvXGrbctm1bg/s62mvhfa3wNX2rPOyww0xxcbGdQTVo0CBzxx13sJ8TSMML+tsvKiqyWVOdFATeeeed9v/6ls57OvGULTn88MPNunXrfPl+JkD59weQPnwWL14cljrXZaV20XyHHHKIfQN797HGLVVb4u5jneuPQx9Wrpdeesm+For08TXVICs40VCD9o/2rZfeyzk5OWH7WtOQNdbs3dcauvAGhPr2qqm0Gr5A/fR+3L17N/s5gYYPH27fj8pUuSfVoqlGwv0/7+nEUwuHjz/+2LZ+8OXnRsLLbgM8zVgzSubOnWtnk0ycONFOM/ZWK6PxCnxNPdNJb63bbrvN/v+zzz4LTTPWPn366aed999/3/nhD38YdZrxt7/9beett95yXn/9dVvRzzTjcJMmTbLTtV955ZWw6YI7d+4Mmy6oqccvvfSSnS44dOhQe4qcLjhy5Eg7Vfn55593unTpwjTjCNdcc42dHfXJJ5/Y96wua1bZCy+8wH5OMu8sHt7TiXHllVfazw29n5cuXWqnC2uasGYC+vFzgwDF46677rIvjvqhaNqxenEgdi+//LINTCJP48ePD001vu6665xu3brZYHD48OG2t4TXV199ZQOSgoICO3XtwgsvtIEPPH+0UfaxTuqN4lLQ9/Of/9xOic3Ly3POPPNMG8R4ffrpp87o0aOddu3a2Q8pfXjt2bOHXe1x0UUXOQcddJD9TNAHsd6zbnDCfm7ZAIX3dPOdc845To8ePez7+YADDrCX161b59t9nKV/Ep+XAQAAaDpqUAAAgO8QoAAAAN8hQAEAAL5DgAIAAHyHAAUAAPgOAQoAAPAdAhQAAOA7BCgAAMB3CFAAAIDvEKAAAADfIUABAADGb/4fWKvDYIVc1nUAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot_search_grid(full_map)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 16](https://adventofcode.com/2021/day/16): Packet Decoder\n", "\n", "- **Input**: The input is a single line containing a sequence of hexadecimal digits, a message using the Buoyancy Interchange Transmission System (BITS). \n", "\n", "\n", "\n", "For now I will leave the input as a string of hex digits:" ] }, { "cell_type": "code", "execution_count": 64, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 1 str of size 1306:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "220D790065B2745FF004672D99A34E5B33439D96CEC80373C0068663101A98C406A5E7395DC1804678BF25A4093BFBDB ...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 1 str of size 1306:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "220D790065B2745FF004672D99A34E5B33439D96CEC80373C0068663101A98C406A5E7395DC1804678BF25A4093BFBDB ...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "in16 = the(parse(16))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 1:** Decode the structure of your hexadecimal-encoded BITS transmission; **what do you get if you add up the version numbers in all packets?**\n", "\n", "The gist of [the instructions](https://adventofcode.com/2021/day/16) is to consider the hexadecimal sequence as a bit string, divide the bit string into bit fields, and construct nested packets based on the values of the fields. Here are basic types for `Bits` (a bit string) and `Packet` (which contains a version number `V`, a type ID `T`, and a `contents` field which can be either a number or a list of packets), along with functions to convert from a hexadecimal string to a bit string, and from there to an int: " ] }, { "cell_type": "code", "execution_count": 65, "metadata": {}, "outputs": [], "source": [ "Bits = str # a string of '0's and '1's\n", "Packet = namedtuple('Packet', 'V, T, contents') # V is version; T is type ID\n", "\n", "def bits_from_hex(hex) -> Bits: \n", " \"\"\"Convert a hexadecimal string into a bit string, making sure each hex digit is 4 bits.\"\"\"\n", " # I could have used just `bin(int(hex, 16))`, except that wouldn't left-zero-pad when needed.\n", " return cat(f'{int(x, 16):04b}' for x in hex)\n", "\n", "def int2(bits: Bits) -> int: \n", " \"\"\"Convert a bit string into an int.\"\"\"\n", " return int(bits, 2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To parse the bit string into packets, I will have four functions that start with the word `parse_` and return a tuple of two values: the object parsed (either an int or a packet) and the remaining bits that were not parsed." ] }, { "cell_type": "code", "execution_count": 66, "metadata": {}, "outputs": [], "source": [ "def parse_int(L, bits) -> tuple[int, Bits]:\n", " \"\"\"Parse an integer from the first L bits; return the int and the remaining bits.\"\"\"\n", " return int2(bits[:L]), bits[L:]\n", "\n", "def parse_packet(bits) -> tuple[Packet, Bits]:\n", " \"\"\"Parse a packet; return it and the remaining bits.\"\"\"\n", " V, T, bits = int2(bits[0:3]), int2(bits[3:6]), bits[6:]\n", " parser = parse_literal_packet if T == 4 else parse_operator_packet\n", " return parser(V, T, bits)\n", " \n", "def parse_literal_packet(V, T, bits) -> tuple[Packet, Bits]:\n", " \"\"\"Build a packet with a literal value; return it and the remaining bits.\"\"\"\n", " literal = ''\n", " while True:\n", " prefix, group, bits = bits[0], bits[1:5], bits[5:]\n", " literal += group\n", " if prefix == '0':\n", " return Packet(V, T, int2(literal)), bits\n", "\n", "def parse_operator_packet(V, T, bits) -> tuple[Packet, Bits]:\n", " \"\"\"Build a packet with subpackets; return it and the remaining bits.\"\"\"\n", " I, bits = parse_int(1, bits)\n", " L, bits = parse_int((15, 11)[I], bits)\n", " subpackets = [] \n", " if I == 0: # Parse L bits of subpackets\n", " subpacket_bits, bits = bits[:L], bits[L:]\n", " while subpacket_bits:\n", " packet, subpacket_bits = parse_packet(subpacket_bits)\n", " subpackets.append(packet)\n", " else: # Parse L subpackets\n", " for p in range(L):\n", " packet, bits = parse_packet(bits)\n", " subpackets.append(packet) \n", " return Packet(V, T, subpackets), bits" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we're ready to solve the puzzle by summing up the version numbers, `V`, of all the packets:" ] }, { "cell_type": "code", "execution_count": 67, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 16.1: 0.1 msec, correct answer: 989 " ] }, "execution_count": 67, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def nested_packets(packet) -> Iterator[Packet]: \n", " \"\"\"The packet and all its subpackets.\"\"\"\n", " yield packet\n", " if packet.T != 4: \n", " for p in packet.contents:\n", " yield from nested_packets(p)\n", "\n", "packet16, _ = parse_packet(bits_from_hex(in16))\n", "\n", "answer(16.1, 989, lambda: sum(p.V for p in nested_packets(packet16)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This was more code than previous days! Here are some assertions I used to make sure I was on the right track:" ] }, { "cell_type": "code", "execution_count": 68, "metadata": {}, "outputs": [], "source": [ "assert (bits_from_hex('D2FE28') == '110100101111111000101000')\n", "\n", "assert (int2(bits_from_hex('D2FE28')) == 13827624)\n", "\n", "assert (bits_from_hex('38006F45291200') \n", " == '00111000000000000110111101000101001010010001001000000000')\n", "\n", "assert (parse_int(4, '011100111') == (7, '00111'))\n", "\n", "assert (parse_packet('110100101111111000101000') \n", " == parse_literal_packet(6, 4, '101111111000101000')\n", " == (Packet(V=6, T=4, contents=2021), '000'))\n", "\n", "assert (parse_packet('00111000000000000110111101000101001010010001001000000000')\n", " == (Packet(V=1, T=6, contents=[Packet(V=6, T=4, contents=10), \n", " Packet(V=2, T=4, contents=20)]),\n", " '0000000'))\n", "\n", "assert (parse_packet('11101110000000001101010000001100100000100011000001100000')\n", " == (Packet(V=7, T=3, contents=[Packet(V=2, T=4, contents=1), \n", " Packet(V=4, T=4, contents=2), \n", " Packet(V=1, T=4, contents=3)]),\n", " '00000'))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 2**: **What do you get if you evaluate the expression represented by your hexadecimal-encoded BITS transmission?**\n", "\n", "The evaluation rules are that a literal packet evaluates to the number that is its contents, and an operator packet applies an operator determined by the type id (in the `packet.T` field) to the list of values formed by evaluating the subpackets. I put the operators into the `packet_ops` dict." ] }, { "cell_type": "code", "execution_count": 69, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 16.2: 0.0 msec, correct answer: 7936430475134 " ] }, "execution_count": 69, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def eval_packet(packet) -> int:\n", " \"\"\"Evaluate a packet according to the operator rules.\"\"\"\n", " if packet.T == 4:\n", " return packet.contents\n", " else:\n", " vals = [eval_packet(p) for p in packet.contents]\n", " return packet_ops[packet.T](vals)\n", " \n", "packet_ops = {0: sum, 1: prod, 2: min, 3: max, \n", " 5: lambda v: int(v[0] > v[1]), \n", " 6: lambda v: int(v[0] < v[1]), \n", " 7: lambda v: int(v[0] == v[1])}\n", "\n", "answer(16.2, 7936430475134, lambda: eval_packet(packet16))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 17](https://adventofcode.com/2021/day/17): Trick Shot\n", "\n", "- **Input**: The input is a short string describing the x and y coordinates of a target area.\n", "\n", "Because the input is so short, I will copy it literally here instead of reading it from a file. I use `ints` to extract the four integers." ] }, { "cell_type": "code", "execution_count": 70, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(257, 286, -101, -57)" ] }, "execution_count": 70, "metadata": {}, "output_type": "execute_result" } ], "source": [ "in17 = ints(\"target area: x=257..286, y=-101..-57\")\n", "in17" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The puzzle involves firing a probe and checking if it hits the target area. The probe starts from an initial position with an initial velocity, and traverses a path according to the physics described in the instructions: each time step position is incremented by velocity, but gravity causes it to gain a -1 in `y` velocity; drag causes it lose 1 in `x` velocity.\n", "\n", "\n", "\n", "- **Part 1**: Find the initial velocity that causes the probe to reach the highest `y` position and still eventually be within the target area after some time step. **What is the highest `y` position it reaches on this trajectory?**\n", "\n", "First I'll define two classes:\n", "- `Target` keeps track of the `Xs` and `Ys` that define the target area.\n", "- `Probe` keeps track of:\n", " - The `x` and `y` position coordinates\n", " - The `vx` and `vy` velocity values\n", " - A boolean `hit` which is True if the probe hit the target at some point in its path\n", " - The `highest` height it ever reached." ] }, { "cell_type": "code", "execution_count": 71, "metadata": {}, "outputs": [], "source": [ "class Target:\n", " \"\"\"The target has a range of Xs and Ys coordinates.\"\"\"\n", " def __init__(self, x0, x1, y0, y1): self.Xs, self.Ys = cover(x0, x1), cover(y0, y1) \n", " \n", "Probe = namedtuple('Probe', 'x, y, vx, vy, hit, highest', \n", " defaults=(0, 0, 0, 0, False, 0))\n", "\n", "target17 = Target(*in17)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The function `probe_step` simulates the physics of the world for one time step: incrementing the probe's position by its velocity vector, changing the `xv` velocity due to drag and the `yv` velocity due to gravity, and tracking the `hit` and `highest` values.\n", "\n", "The function `probe_steps` simulates for multiple time steps; until the probe has passed the target. " ] }, { "cell_type": "code", "execution_count": 72, "metadata": {}, "outputs": [], "source": [ "def probe_steps(probe, target=target17, do=ignore) -> Probe:\n", " \"\"\"Simulate the probe until it passes the target.\n", " You can optionally `do` something to the probe on each time step.\"\"\"\n", " maxx, miny = max(target.Xs), min(target.Ys)\n", " do(probe)\n", " while probe.x <= maxx and probe.y >= miny:\n", " probe = probe_step(probe, target)\n", " do(probe)\n", " return probe\n", "\n", "def probe_step(probe, target) -> Probe:\n", " \"\"\"Simulate the physics of the probe for one time step.\"\"\"\n", " x, y, vx, vy, hit, highest = probe\n", " return Probe(x=x + vx, y=y + vy, \n", " vx=sign(vx) * (abs(vx) - 1), vy=vy - 1,\n", " hit=hit or (x in target.Xs and y in target.Ys),\n", " highest=max(highest, y + vy))" ] }, { "cell_type": "code", "execution_count": 73, "metadata": {}, "outputs": [], "source": [ "def probe_steps(probe, target=target17, do=ignore) -> Probe:\n", " \"\"\"Simulate the probe until it passes the target.\n", " You can optionally `do` something to the probe on each time step.\"\"\"\n", " maxx, miny = max(target.Xs), min(target.Ys)\n", " do(probe)\n", " while probe.x <= maxx and probe.y >= miny:\n", " x, y, vx, vy, hit, highest = probe\n", " probe = Probe(x=x + vx, y=y + vy, \n", " vx=sign(vx) * (abs(vx) - 1), vy=vy - 1,\n", " hit=hit or (x in target.Xs and y in target.Ys),\n", " highest=max(highest, y + vy))\n", " do(probe)\n", " return probe" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For example:" ] }, { "cell_type": "code", "execution_count": 74, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Probe(x=290, y=-90, vx=4, vy=-15, hit=True, highest=15)" ] }, "execution_count": 74, "metadata": {}, "output_type": "execute_result" } ], "source": [ "probe_steps(Probe(vx=24, vy=5))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "By experimentation, I found that:\n", "- Any `vx<23` will never reach the target (regardless of `vy`).\n", "- A `vx=23` value means that the probe will have an `x` velocity of zero when it is inside the width of the target. \n", "- Any `vx>23` will eventually pass beyond the target width (and might or might not hit the target along the way). \n", "- This is because 23 is the only value that leads to a sequence of decreasing `vx` values adding up to an `x` position that is within the x=257..286 target area: 23 + 22 + 21 + ... + 2 + 1 = 276. (As with Day 7, we're dealing with triangular numbers.) Here's the demonstration:" ] }, { "cell_type": "code", "execution_count": 75, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{22: [253, False], 23: [276, True], 24: [300, False]}" ] }, "execution_count": 75, "metadata": {}, "output_type": "execute_result" } ], "source": [ "{vx: [sum(range(vx, 0, -1)), sum(range(vx, 0, -1)) in target17.Xs]\n", " for vx in [22, 23, 24]}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Specifying `do=print` is useful for experimentation:" ] }, { "cell_type": "code", "execution_count": 76, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Probe(x=0, y=0, vx=23, vy=7, hit=False, highest=0)\n", "Probe(x=23, y=7, vx=22, vy=6, hit=False, highest=7)\n", "Probe(x=45, y=13, vx=21, vy=5, hit=False, highest=13)\n", "Probe(x=66, y=18, vx=20, vy=4, hit=False, highest=18)\n", "Probe(x=86, y=22, vx=19, vy=3, hit=False, highest=22)\n", "Probe(x=105, y=25, vx=18, vy=2, hit=False, highest=25)\n", "Probe(x=123, y=27, vx=17, vy=1, hit=False, highest=27)\n", "Probe(x=140, y=28, vx=16, vy=0, hit=False, highest=28)\n", "Probe(x=156, y=28, vx=15, vy=-1, hit=False, highest=28)\n", "Probe(x=171, y=27, vx=14, vy=-2, hit=False, highest=28)\n", "Probe(x=185, y=25, vx=13, vy=-3, hit=False, highest=28)\n", "Probe(x=198, y=22, vx=12, vy=-4, hit=False, highest=28)\n", "Probe(x=210, y=18, vx=11, vy=-5, hit=False, highest=28)\n", "Probe(x=221, y=13, vx=10, vy=-6, hit=False, highest=28)\n", "Probe(x=231, y=7, vx=9, vy=-7, hit=False, highest=28)\n", "Probe(x=240, y=0, vx=8, vy=-8, hit=False, highest=28)\n", "Probe(x=248, y=-8, vx=7, vy=-9, hit=False, highest=28)\n", "Probe(x=255, y=-17, vx=6, vy=-10, hit=False, highest=28)\n", "Probe(x=261, y=-27, vx=5, vy=-11, hit=False, highest=28)\n", "Probe(x=266, y=-38, vx=4, vy=-12, hit=False, highest=28)\n", "Probe(x=270, y=-50, vx=3, vy=-13, hit=False, highest=28)\n", "Probe(x=273, y=-63, vx=2, vy=-14, hit=False, highest=28)\n", "Probe(x=275, y=-77, vx=1, vy=-15, hit=True, highest=28)\n", "Probe(x=276, y=-92, vx=0, vy=-16, hit=True, highest=28)\n", "Probe(x=276, y=-108, vx=0, vy=-17, hit=True, highest=28)\n" ] }, { "data": { "text/plain": [ "Probe(x=276, y=-108, vx=0, vy=-17, hit=True, highest=28)" ] }, "execution_count": 76, "metadata": {}, "output_type": "execute_result" } ], "source": [ "probe_steps(Probe(vx=23, vy=7), do=print)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Once I found the critical `vx=23` value, I figured I could simply vary the `vy` values to find the highest height:" ] }, { "cell_type": "code", "execution_count": 77, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 17.1: 10.5 msec, correct answer: 5050 " ] }, "execution_count": 77, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def highest_height(vxs, vys) -> int:\n", " \"\"\"The highest height reached by a probe that hits the target, among all vx and vy values.\"\"\"\n", " probes = [probe_steps(Probe(vx=vx, vy=vy)) for vx in vxs for vy in vys]\n", " return max(probe.highest for probe in probes if probe.hit)\n", " \n", "answer(17.1, 5050, lambda: highest_height(vxs=[23], vys=range(150)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "I recognize 5,050 as the 100th triangular number (just as Gauss did, as [legend has it](https://www.americanscientist.org/article/gausss-day-of-reckoning)), and of course the highest height of any trajectory must be a triangular number, because `vy` decreases by one each step.\n", "\n", "- **Part 2**: **How many distinct initial velocity values cause the probe to be within the target area after some time step?**\n", " \n", "I can try a bunch of `vx` and `vy` values. For `vx`, start at the critical 23 value and go up to the maximum of the target area (meaning that the probe hits the right edge of the target area on the first time step). For `vy`, start with a negative value that would hit the bottom of the target area on the first time step, and go up to 100. (Anything more than `vy=100` would end up passing through the target without touching it: the probe's `y` value would be above the target on one step and below it on the next.)" ] }, { "cell_type": "code", "execution_count": 78, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 17.2: 130.6 msec, correct answer: 2223 " ] }, "execution_count": 78, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def probe_hits(velocities: Iterable[Point]) -> int:\n", " \"\"\"How many of these velocities cause the probe to hit the target?\"\"\"\n", " return quantify(probe_steps(Probe(vx=vx, vy=vy)).hit \n", " for vx, vy in velocities)\n", "\n", "answer(17.2, 2223, lambda:\n", " probe_hits(cross_product(range(23, max(target17.Xs) + 1), \n", " range(min(target17.Ys), 101))))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 3**: Visualization\n", "\n", "I'd like to understand things a bit better with some visualization. The function `plot_probes` plots the target as a black box and plots the paths of various probes with different initial velocities in different colors:" ] }, { "cell_type": "code", "execution_count": 79, "metadata": {}, "outputs": [], "source": [ "def plot_probes(velocities: list[Point], target=target17) -> None:\n", " \"\"\"Plot the target as a black box and the paths of probes with colored lines.\"\"\"\n", " plt.plot(*box(target.Xs, target.Ys), 'k-', linewidth=4)\n", " for (vx, vy) in velocities:\n", " path = []\n", " probe_steps(Probe(vx=vx, vy=vy), do=path.append)\n", " plt.plot([p.x for p in path], [p.y for p in path], '.:', label=f'({vx}, {vy})')\n", " plt.legend()\n", " \n", "def box(Xs, Ys) -> tuple[list[int], list[int]]:\n", " \"\"\"A tuple of (x_coords, y_coords) to draw a box around the (x, y) points.\"\"\"\n", " x1, x2, y1, y2 = min(Xs), max(Xs), min(Ys), max(Ys)\n", " return [x1, x2, x2, x1, x1], [y1, y1, y2, y2, y1]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Below are four paths: two that hit the target, and two that miss:" ] }, { "cell_type": "code", "execution_count": 80, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ " plot_probes([(24, 5), (32, 0), (34, -5), (36, -10)])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Below we see that `vx=22` is doomed to stall before it reaches the target area; `vx=23` is the critical value that stalls and falls into the target area; and `vx=24` shoots beyond the target area before stalling." ] }, { "cell_type": "code", "execution_count": 81, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ " plot_probes([(22, 12), (23, 10), (24, 8)])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Below is `vx=23` paired with three different `vy` velocities:" ] }, { "cell_type": "code", "execution_count": 82, "metadata": {}, "outputs": [ { "data": { "image/png": "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D2hzv90cqvJ8/y73OkD2gAEQERFRESmngVnNAIO+cJvOERi3B/CtXe3fv9kMlYiISIvOH1PBzzT/GugVXhvzvL0AQz5w/ji0gAEQERGRFvnXBXQOSHR0RLKTIxIdHYwjQP5VZyn79WAAREREpEW+tbG462is8jSWlfnczxeLu46ym+mv8sYAiIiISIMSMhIwNX4l9AW9yORabst2LWAAREREpEFxqXHQWyZASxBk0ONkmja6JzAAIiIi0qAInwg46KzDALkd7q2N/pkMgIiIiDQo2DMYUzpPga4gFJBruS3btaDcKkETERGRfRtefzi6hHZR014y8qOV4EcwACIiItKwYM9gTQU+JpwCIyIiIs1hAERERKRh326IxZM/7sDfB85CSxgAERERadiOuIv4dVc8jiWmQ0uYA0RERKRh3RsEwtPVCfVreUNLOAJERESkUfO3xOGZBTvx7cYTGP31FnVbKxgAERERadCZlEuYtHgP9AbjbbmevHiv2q4FDICIiIg0KCYpwxz8mOQbDIhNyoQWMAAiIiLSoKgATzgY+6CaOep0iAzwgBYwACIiItKgEF93TB/eXAU9Qq6nDW+mtmsBV4ERERFp1J3tI9CjQaCa9pKRH60EP4IBEBERkYaF+LprKvAx4RQYERERaQ4DICIiItIcBkBERESkOQyAiIiISHMYABEREZHmMAAiIiIizWEARERERJrDAIiIiIg0hwEQERERaQ4DICIiItIcBkBERESkOZroBWYwGNR1ampqZT8UIiIiKiPT+7bpfdyWNBEApaWlqevw8PDKfihERER0De/jvr6+sCWdoTzCKjuj1+sRHx8Pb29v6HQ6m0amElSdPHkSPj4+NrtfLeCx47Hj865q4WuWx62ynnP79+9Hw4YN4eBg26wdTYwAyUELCwsrt/uX4IcBEI9dRePzjseuMvB5x+NW0WrXrm3z4EcwCZqIiIg0hwEQERERaQ4DoOvg6uqKKVOmqGvisasofN7x2FUGPu943Krbc04TSdBEREREljgCRERERJrDAIiIiIg0hwEQERERaQ4DICIiItIcBkDXYc6cOYiMjISbmxs6duyIzZs32+4vUw288sorqvK25aVRo0bm72dlZWHs2LGoWbMmvLy8cOutt+Ls2bPQon/++QdDhw5FaGioOk6//PKL1fdlrcLLL7+MkJAQuLu7o1+/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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ " plot_probes([(23, 16), (23, 11), (23, 7)])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "When `vx < vy` the probe's path begins by bending up (e.g. for `(23, 32)`); when `vx = vy` the path is a straight line (with ever-slowing speed); and when `vx > vy` the path bends down (e.g. for `(23, 8)`). But all paths eventually stall and fall due to drag." ] }, { "cell_type": "code", "execution_count": 83, "metadata": {}, "outputs": [ { "data": { "image/png": "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9s+5EqVMk9n8+fPVKpy5c+eqVSTPPfecoVq1alaZ6Vr3+uuvG9atW2eIiooybN682dC7d2+Dn5+fWjEhXnjhBUNoaKhhzZo1hl27dhk6deqkTlp0/fp1w969e9VJXpYff/yx+v/Zs2fV9VOnTlXPr99//91w4MABtaopLCzMkJqaar6Nfv36GVq1amXYvn27YdOmTYZ69eoZHnnkEYOWj51c969//UutIJHn4T///GNo3bq1OjZpaWmaPnYvvviiwdvbW71GL168aD6lpKSY97nZazQrK8vQtGlTQ58+fQz79u0zrFixwuDv72+YMGGCQcvH7uTJk4Z3331XHTN53snrtm7duoZu3boZtH7sxo8fr1bLyXGR9zK5LKtV//777zJ/zjEAug2ffvqpeqDc3NzUsvht27bdzs05nKFDhxqCgoLU8alVq5a6LG8MJvLh/dJLL6klkB4eHob7779fvYlo0dq1a9WHd96TLOE2LYV/6623DAEBASrw7tWrl+HYsWNWt3HlyhX1oe3l5aWWhD799NMqANDysZMPJHmjlDdIWV5bu3Ztw4gRI/J9UdHisSvomMlpzpw5JXqNnjlzxtC/f39D5cqV1Rcc+eKTmZlp0PKxi46OVsGOr6+ver1GREQYxo4da0hMTDRo/dg988wz6nUonwvyupT3MlPwU9bPOZ38U3oDWURERET2jzlAREREpDkMgIiIiEhzGAARERGR5jAAIiIiIs1hAERERESawwCIiIiINIcBEBEREWkOAyAiIiLSHAZAREREpDkMgIiIiEhzGAARERGR5jAAIiIiImjN/wP9wFtKNn8PrgAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ " plot_probes([(23, 32), (23, 23), (23, 8)])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Below, initial velocity `(23, 100)`, yields the high point of 5050 before stalling and falling into the target:" ] }, { "cell_type": "code", "execution_count": 84, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAj0AAAGdCAYAAAD5ZcJyAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjgsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvwVt1zgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAQklJREFUeJzt3Qd8lFXW+PGTXoA0ICRAAqH3SAugglIEWXRV8F0sq6ygrgr8RVwUdlls68JiLyi7uivsa6HsWl5RUATBQgmgIF1KgAihkwCB9Of/ORdnmAkBEgwkmfv7fj7DZO7cDE+eTPKc3HvOvX6O4zgCAADg4/wr+gAAAAAuBYIeAABgBYIeAABgBYIeAABgBYIeAABgBYIeAABgBYIeAABgBYIeAABghUDxUUVFRbJnzx6pUaOG+Pn5VfThAACAUtA1k48dOyZ169YVf//yHZvx2aBHA56EhISKPgwAAHAB0tPTpX79+lKefDbo0REe10mLiIio6MMBAAClcPToUTNo4bqOlyefDXpcU1oa8BD0AABQtVyM1BQSmQEAgBUIegAAgBUIegAAgBV8NqentGVxBQUFUlhYWNGHgjIKCgqSgIAAzhsAoNSsDXry8vIkIyNDTpw4UdGHggtMcNNSxurVq3P+AAClYmXQowsXpqWlmZECXfwoODiYBQyr2AjdgQMH5KeffpKmTZsy4gMAKJVAW0d5NPDRdQDCw8Mr+nBwAWrXri07duyQ/Px8gh4AQKlYnchc3stb49JhaxEAQFlx1QcAAFYg6AEAAFYg6KliDh06JLGxsSafxVeNHTtWRo4cWdGHAQA+bU36EXnj623m3hYEPVXM008/LTfccIM0bNjQPF6zZo3ceuutJik7LCxMWrZsKS+99JLX53zzzTdyxRVXSM2aNU2fFi1ayAsvvFDm//sf//iHXH311WYvM82pyczMPKPP4cOH5fbbbzd9oqKiZNiwYXL8+HGvPj/88IN0795dQkNDzXFPnjzZ6/k//OEPMn36dNm+fXuZjxEAcH4Pz1otN0xZIk9/ssnc62MblCnoefzxx83FzvOmF1CXnJwcGT58uLm46vopgwYNkn379nm9xq5du2TAgAGmakpHLMaMGWMWCPS0aNEi6dChg4SEhEiTJk1k2rRpUlllZJ2UJdsOmvuLTdcU+uc//2kCCZdVq1aZ8/j222/L+vXr5U9/+pOMGzdOXn31VXefatWqyYgRI+Srr76SjRs3yvjx481Ng5iy/v/XXnut/PGPfzxrHw149Djmz58vc+bMMf/nvffe67V7bt++faVBgwbm2J955hnzvvI8llq1akm/fv3k9ddfL9PxAQDOb036Efnvd7u92vSxFSM+Thk89thjTuvWrZ2MjAz37cCBA+7n77vvPichIcFZsGCBs3LlSqdr167O5Zdf7n6+oKDAadOmjdOnTx/n+++/dz799FOnVq1azrhx49x9tm/f7oSHhzujR492NmzY4LzyyitOQECAM2/evLIcqpOVleXol6f3xZ08edK8tt57ys7NN7eioiJ3W25+oWnLyS84o++/l6Q5SWPnOA0enWPu31m2w7SfzDuzr94KC0+/bl5BoVNWs2fPdmrXrn3efg888IDTs2fPc/a56aabnN/+9rfOhfjyyy/NuT1y5IhXu55TbV+xYoW7be7cuY6fn5+ze/du8/i1115zoqOjndzcXHefRx991GnevLnXa02fPt2pX7/+WY/hbN9DAMC59Xp2obluFb/1fnZhpTh157p+/1Jlnt4KDAyUuLg4903/KldZWVlmFOL555+XXr16SceOHeWtt96SJUuWyLJly0yfzz//XDZs2GBGJS677DLp37+/PPXUUzJlyhSzdo6aOnWqJCUlyXPPPWemanSE4uabb76g6ZiyajXhM3M7nH3qWNQ/vtpm2h77aL1X3w5Pzpc/f7ReipyfFzx0RP704TrT99H//uDV98q/fWnatx44Pc3zn1U/lfn4vv76a3Nez0e/FzExMWd9/vvvvzffl6uuukrK09KlS82UVqdOndxtffr0MUsDLF++3N2nR48eZkFIFx3V2bx5sxw5cvqvjJSUFLP4oC/nLgFARdhxoOSdCNLO0u5Lyhz0bNmyxaxi3KhRIzOVodNVSqcqdKE4vci56NRXYmKiudApvW/btq3UqVPH64KnUx46JeLq4/karj6u16gsXMGOJ6eEtvK0c+dOc+7PRYOZmTNnek0puei2DTplqEGJTkPefffd5Xp8e/fuNVNtxYNkDcD0OVcfz++/cj129VGur1O/ZgBA+QkJ9itTu7UrMnfp0sXk1zRv3tzsW/XEE0+YhNR169aZC5b+9a5/6Re/oJXlgne2PhoYnTx50iTiliQ3N9fcXLR/WW14sp+5Dws6vZHlvT0ay9ArkyTA3/vNMG9Ud+nz/GKv4Ee7fDH6Kqkb5X2M3zza09yHBp5+3Zs71i/z8enXr8m/Z6PfB01yfuyxx0zeTEkjRZpUrCNvWiGl+VKaBF0Zub7P7I0GAOUrtnqo7Dh8ssR2X1emoEeno1zatWtngiBNSJ01a9ZZg5FLZeLEiSYI+yXCg888HcGB/hJcwoBYo9rVZeLAtvLH99dJoeNIgJ+f/HVgG9NemtcNCih74ZxOJXpOAXnSacPevXubER5NUi6JThsqHW3TBHNNIC7PoEenO/fv3+/VpknqWtGlz7n6FE9udz129VH6Oa7tJgAA5ScyLEj/jD6zPVzbfdsvKlnXUZ1mzZrJ1q1bzQVL83KKlzHrBa0sF7yz9dES6HMFVlqxpLksrlt6erpcbIM7J8o3Y3vKe/d0Nff6+GJq3769CW6K06nBnj17ypAhQ0xJe2no3mOeI2PloVu3bub7r1OdLgsXLjT/lwbIrj5a0aVToS5a6aWjh9HR0V6jVkFBQdK6detyPUYAsF1eYVGJ7fkFJbf7kl8U9OhUybZt2yQ+Pt4k2OpFasGCBe7nNTlVc370Qqf0fu3atV6jAXrB04CmVatW7j6er+Hq43qNs9FcFX0dz9ulEB8ZJt0a1zT3F5vmNmmA4znao8GBBjw6nTV69GgzPag33YXcRRPFP/74Y5OPpTdNOH/22Wflt7/9bZn+f33d1atXmyBX6fdSH7tGZTTxXEva77nnHklNTZVvv/3WJKLfcsst7hyd2267zUyDatm9fi2af6TrCumxF5+K06nTih5BBABfE1M9uEztPqUspV4PP/yws2jRIictLc359ttvTem5lpzv37/fXbKemJjoLFy40JSsd+vWzdyKl6z37dvXWb16tSlD1xLskkrWx4wZ42zcuNGZMmXKJStZrwpSUlKcqVOnei0joF9n8VuDBg3cfV5++WWz1ICe14iICKd9+/amdLyw8HTZ/FtvvWU+71zO9n/p57ocOnTIufXWW53q1aub/+uuu+5yjh075vU6a9asca688konJCTEqVevnjNp0qQz/i8tYX/vvffOeixV+XsIABVp+DsrSyxZH/HuSp8vWS9T0DN48GAnPj7eCQ4ONhcrfbx161b383oB0jVidB0WvcDqWjC6lo+nHTt2OP3793fCwsJMwKSBVH5+/hnrwFx22WXm/2nUqJHXRdX2oGfOnDlOy5YtvQKW8jBhwgTnqquucioDXb9Jv8bi7wtf+R4CQEUabnHQU6ZE5hkzZpzzea0s0qkUvZ2NJj5/+umn53wd3epA15LBmXQ1a52i2r17t9nCobzMnTvXaxXnipSdnW3WeNJydwAAygtXlSpo1KhR5f6amoNTWehilAAAlDc2HAUAwCK1qoeU2F7bgnV6CHoAALBI67olVze3jK8hvs7qoEcTuVE18b0DgAuzIeNYie0bz9LuS6wMenQ9IcUWB1WXa4PagIDTW3sAAM7vwLGcktuPl9zuS6xMZNYLpa4m7VokMTw8XPz8fH+jNV+hKzzr4ov6faPCCwDKppbFOT1WBj2e214U3ysKVYO/v78kJiYSrAJAGbW2OKfH2qBHR3Z0+4zY2FivfaBQNehWFhr4AADKZoPFOT3WBj2eU13khQAAbOFYXMTDn8oAAFiktcXTWwQ9AABYZIPF01sEPQAAWMRhegsAANigNdNbAADABpknS65YPnqyQHwd01sAAFgkKuzUrgTFRYT5fkE3QQ8AABbZQCIzAACwgUMiMwAAsEFrEpkBAIANMklkBgAANogikRkAANggk5EeAABggyhGegAAgA0yGekBAAA2iGKkBwAA2CCTkR4AAGCDKEZ6AACADTIZ6QEAADZIaRhTYnunhtHi69hwFAAAWIGgBwAAi6TuOFxi+8odR8TXEfQAAGCRKBKZAQCADTJJZAYAADaIYqQHAADYIJORHgAAYIMoRnoAAIANMhnpAQAANkhhcUIAAADfxjo9AABYJJXFCQEAgA2iSGQGAAA2yCSRGQAA2CCFRGYAAADfRiIzAAAWSSWRGQAA2CCF6S0AAADfxvQWAAAWSWV6CwAA2CCKdXoAAIANMlmnBwAA2CCFRGYAAADfRiIzAAAWSSWRGQAA2CCF6a0LM2nSJPHz85NRo0a523JycmT48OFSs2ZNqV69ugwaNEj27dvn9Xm7du2SAQMGSHh4uMTGxsqYMWOkoKDAq8+iRYukQ4cOEhISIk2aNJFp06Zd4FECAAD8gumtFStWyN///ndp166dV/tDDz0kH3/8scyePVsWL14se/bskYEDB7qfLywsNAFPXl6eLFmyRKZPn24CmgkTJrj7pKWlmT49e/aU1atXm6Dq7rvvls8++4zvGQAAv0Aq01tlc/z4cbn99tvljTfekOjoaHd7VlaW/POf/5Tnn39eevXqJR07dpS33nrLBDfLli0zfT7//HPZsGGDvP3223LZZZdJ//795amnnpIpU6aYQEhNnTpVkpKS5LnnnpOWLVvKiBEj5Oabb5YXXniBNzoAAL9ACtNbZaPTVzoS06dPH6/2VatWSX5+vld7ixYtJDExUZYuXWoe633btm2lTp067j79+vWTo0ePyvr16919ir+29nG9BgAAQFkFlvUTZsyYId99952Z3ipu7969EhwcLFFRUV7tGuDoc64+ngGP63nXc+fqo4HRyZMnJSws7Iz/Ozc319xctC8AACj99FZywunZG7E9pyc9PV0efPBBeeeddyQ0NFQqk4kTJ0pkZKT7lpCQUNGHBABApZPC9Fbp6PTV/v37TVVVYGCguWmy8ssvv2w+1tEYzcvJzMz0+jyt3oqLizMf633xai7X4/P1iYiIKHGUR40bN87kFLluGqABAABc0EhP7969Ze3ataaiynXr1KmTSWp2fRwUFCQLFixwf87mzZtNiXq3bt3MY73X19DgyWX+/PkmoGnVqpW7j+druPq4XqMkWtqur+F5AwAA3lItrt4qU05PjRo1pE2bNl5t1apVM2vyuNqHDRsmo0ePlpiYGBN4jBw50gQrXbt2Nc/37dvXBDd33HGHTJ482eTvjB8/3iRHa+Ci7rvvPnn11VflkUcekaFDh8rChQtl1qxZ8sknn5TfVw4AgIVSLJ7eKnMi8/loWbm/v79ZlFATi7Xq6rXXXnM/HxAQIHPmzJH777/fBEMaNA0ZMkSefPJJdx8tV9cAR9f8eemll6R+/fry5ptvmtcCAAC4EH6O4zjig7R6SxOaNb+HqS4AAE554+tt8vQnm6S4Pw9oKcO6N5KKdjGv32w4CgCARVIsnt4i6AEAAFYg6AEAwCKpFldvEfQAAGCRFKa3AAAAfBsjPQAAWCSV6S0AAGCDFKa3AAAAfBvTWwAAWCSV6S0AAGCDFKa3AAAAfBvTWwAAWCSV6S0AAGCDFKa3AACADZIToiUyNNCrLTEmzLT7Oqa3AACwyJr0I5KVU+DVtuvwSdPu6wh6AACwSCo5PQAAwAYp5PQAAAD4Nqa3AACwSCrTWwAAwAYpTG8BAAD4Nqa3AACwSCrTWwAAwAYpTG8BAAAbJCdES0y1YK82VmQGAAA+Z036ETmcnefVxorMAADA56SS0wMAAGyQQk4PAACwQTK7rAMAABusYZd1AABgg1RyegAAgA1SyOkBAADwbWxDAQCARVKZ3gIAADZIYXoLAADYUrJek20oAACADSXrh9iGAgAA+LpUcnoAAIANUsjpAQAANkhmGwoAAGCDNWxDAQAAbJBKTg8AALBBCjk9AADAlpyehOgwr7bEmDDT7uvYhgIAAMtyetKPnPRq23X4pGn3dQQ9AABYJJWcHgAAYIMUcnoAAAB8G9NbAABYJJXpLQAAYIMUprcAAIANktmGAgAA2GAN21AAAAAbpJLTAwAAbJBCTk/pvP7669KuXTuJiIgwt27dusncuXPdz+fk5Mjw4cOlZs2aUr16dRk0aJDs27fP6zV27dolAwYMkPDwcImNjZUxY8ZIQUGBV59FixZJhw4dJCQkRJo0aSLTpk0rl280AAC2S06IlkS2oTi/+vXry6RJk2TVqlWycuVK6dWrl9xwww2yfv168/xDDz0kH3/8scyePVsWL14se/bskYEDB7o/v7Cw0AQ8eXl5smTJEpk+fboJaCZMmODuk5aWZvr07NlTVq9eLaNGjZK7775bPvvss4vyzQcAwLacnl2WbkPh5ziO80teICYmRp555hm5+eabpXbt2vLuu++aj9WmTZukZcuWsnTpUunatasZFbruuutMMFSnTh3TZ+rUqfLoo4/KgQMHJDg42Hz8ySefyLp169z/xy233CKZmZkyb968Uh/X0aNHJTIyUrKyssyoFAAAEHnj623y9CebzjgVfx7QUoZ1b1Thp+hiXr8veHFCHbWZMWOGZGdnm2kuHf3Jz8+XPn36uPu0aNFCEhMTTdCj9L5t27bugEf169fPfIGu0SLt4/karj6u1wAAABcuxeKcnsCyfsLatWtNkKP5O5q388EHH0irVq3MVJSO1ERFRXn11wBn79695mO99wx4XM+7njtXHw2MTp48KWFhYSUeV25urrm5aH8AAHBmTk/LuBqyce8xd9ugDvVMu68r80hP8+bNTYCzfPlyuf/++2XIkCGyYcMGqWgTJ040w2GuW0JCQkUfEgAAlVJsjRCxUZmDHh3N0Yqqjh07mkAjOTlZXnrpJYmLizMJypp740mrt/Q5pffFq7lcj8/XR+f1zjbKo8aNG2fm/1y39PT0sn5pAAD4vDXpR2TxloNebf/9brcVicy/eMPRoqIiM62k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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ " plot_probes([(23, 100)])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Note the y-axis on this plot is ten times more than the previous plot. That's why the target box looks so squished and the path slope looks shallow. If we equalize the two axes, we can see how steep the slope is (and why this day is titled \"Trick Shot\"):" ] }, { "cell_type": "code", "execution_count": 85, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ " plot_probes([(23, 100)]); plt.axis('square');" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "I can now see a more efficient way to deal with this problem:\n", " - The movement in `x` and `y` are independent, so we can treat them separately:\n", " - For each `vx`, determine in which time step(s) a probe could intersect `target.Xs`.\n", " - For each `vy`, determine in which time step(s) a probe could intersect `target.Ys`.\n", " - Now if a time step has 10 `vx` and 12 `vy` intersects, then that's 120 hits. \n", " - The number of simulations we have to do is the sum of the lengths of `vxs` and `vys`, not their product.\n", " - This technique could have cut the number of simulations from about 50,000 to about 500. \n", " - But 50,000 is a small number and the code runs in well under a second, so we don't need a re-implementation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 18](https://adventofcode.com/2021/day/18): Snailfish\n", "\n", "- **Input**: The input is the math homework for some snailfish: each item is a *snailfish number*. A snailfish number is either a regular number (a non-negative integer) or a bracketed pair of two snailfish numbers separated by a comma. \n", "\n", "For now I'll leave each line of the input as a string:" ] }, { "cell_type": "code", "execution_count": 86, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 100 strs of size 9 to 57:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "[[[[6,3],7],0],[[7,0],0]]\n", "[[[4,7],[6,[6,5]]],[4,[[6,5],[9,1]]]]\n", "[[[[3,7],[6,9]],[3,[4,1]]],8]\n", "[[[0,[2,0]],3],2]\n", "[[[[1,3],4],9],[[[1,8],[9,3]],[0,7]]]\n", "[[[5,9],1],[[[4,8],[4,8]],[[9,7],[3,6]]]]\n", "[[[0,7],4],[[[0,4],2],[4,2]]]\n", "[[5,1],[2,5]]\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 100 strs of size 9 to 57:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "[[[[6,3],7],0],[[7,0],0]]\n", "[[[4,7],[6,[6,5]]],[4,[[6,5],[9,1]]]]\n", "[[[[3,7],[6,9]],[3,[4,1]]],8]\n", "[[[0,[2,0]],3],2]\n", "[[[[1,3],4],9],[[[1,8],[9,3]],[0,7]]]\n", "[[[5,9],1],[[[4,8],[4,8]],[[9,7],[3,6]]]]\n", "[[[0,7],4],[[[0,4],2],[4,2]]]\n", "[[5,1],[2,5]]\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "in18 = parse(18)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 1**: Add up all of the snailfish numbers in the order they appear. **What is the magnitude of the final sum?**\n", "\n", "From [the Day 18 instructions](https://adventofcode.com/2021/day/18), I determined that I will need to do the following:\n", "- **Add** two snailfish numbers.\n", "- **Reduce** a snailfish number to simplified form.\n", "- **Split** a regular number that is inside a snailfish number.\n", "- **Explode** a deeply-nested pair inside a snailfish number.\n", "- Compute the **magnitude** of a snailfish number.\n", "\n", "What representation of snailfish numbers can best handle these operations? I considered three candidates:\n", "1. **String**: a string in the same format as the input file. I could manipulate them with regular expressions.
But as my friend Jamie Zawinski [famously said](http://regex.info/blog/2006-09-15/247), \"now I have two problems.\"\n", "2. **Tree**: a nested tree of pairs, each a Python list of two elements. The input string can be directly converted into this form with `functools.literal_eval`. But **explode** needs to find the \"previous\" and \"next\" numbers–that would require walking up and down the tree, or maintaining next/previous pointers. Sounds complicated.\n", "3. **Flat list**: A flat linear list of regular numbers, with annotations giving the nesting level of each number. \n", "\n", "I decided to go with the flat list. The split and explode operations should be easy. Finding the previous and next number is trivial. However, for the **magnitude** calculation I think I will want to convert to the nested tree form. \n", "\n", "I will define these three data types:\n", "- `Snum`: a *snailfish number*. Implemented as a mutable flat list of `Num` objects. \n", "- `Num`: a *regular number*. A mutable object with two fields: `.n`, the number itself, and `.level`, the nesting level. \n", "- `Tree`: a *snailfish number* represented by either an `int` or a list of two `Tree` elements.\n", "\n", "For example, the snailfish number `[[7,[8,9]],10]` would be represented as:\n", "\n", " Snum([Num(7, level=2), Num(8, level=3), Num(9, level=3), Num(10, level=1)])\n", "\n", "Here are the three type definitions:" ] }, { "cell_type": "code", "execution_count": 87, "metadata": {}, "outputs": [], "source": [ "class Snum(list): \n", " \"\"\"An Snum is a list of Num components.\"\"\"\n", "\n", "@dataclass()\n", "class Num:\n", " \"\"\"A \"regular number\" within an Snum, annotated with its nesting level.\"\"\"\n", " n: int\n", " level: int\n", " \n", "Tree = int | list['Tree'] # An int like `1` or a list like `[2,3]` or `[1,[2,3]]`." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Below are the four main operations. (I wanted to be sure I got the instructions right, so I copied them mostly verbatim into the docstrings.) Note that `split` and `explode` mutate their argument, and return `True` if they changed the argument. That simplifies the control flow in `snum_reduce`." ] }, { "cell_type": "code", "execution_count": 88, "metadata": {}, "outputs": [], "source": [ "def snum_add(left: Snum, right: Snum) -> Snum:\n", " \"\"\"To add two snailfish numbers, form a pair from the left and right \n", " parameters of the addition operator. Snailfish numbers must always be reduced.\"\"\"\n", " snum = Snum(Num(x.n, x.level + 1) for x in left + right)\n", " return snum_reduce(snum)\n", "\n", "def snum_reduce(snum) -> Snum:\n", " \"\"\"Mutate snum until it is in reduced form.\n", " To reduce a snailfish number, you must repeatedly do the first action \n", " that applies to the snailfish number: (1) explode (2) split.\"\"\"\n", " while explode(snum) or split(snum):\n", " continue\n", " return snum\n", "\n", "def split(snum) -> bool:\n", " \"\"\"If any regular number is 10 or greater, the leftmost such regular number splits.\n", " Mutate the snum and return True if there was a split; False if not.\n", " To split a regular number, replace it with a pair; the left element of the pair \n", " should be the regular number divided by two and rounded down, while the right element \n", " of the pair should be the regular number divided by two and rounded up. \n", " For example, 10 becomes [5,5], 11 becomes [5,6], 12 becomes [6,6], and so on.\"\"\"\n", " i = first(i for i, s in enumerate(snum) if s.n >= 10)\n", " if i is None: \n", " return False\n", " else: # The number to split is snum[i]\n", " level = snum[i].level\n", " L, R = snum[i].n // 2, (snum[i].n + 1) // 2\n", " snum[i] = Num(L, level + 1)\n", " snum.insert(i + 1, Num(R, level + 1))\n", " return True\n", " \n", "def explode(snum) -> bool:\n", " \"\"\"If any pair is nested inside four pairs, the leftmost such pair explodes.\n", " Mutate the snum and return True if there was an explode; False if not.\n", " To explode a pair, the pair's left value is added to the first regular number \n", " to the left of the exploding pair (if any), and the pair's right value is added \n", " to the first regular number to the right of the exploding pair (if any). \n", " Exploding pairs will always consist of two regular numbers. \n", " Then, the entire exploding pair is replaced with the regular number 0.\"\"\"\n", " i = first(i for i, s in enumerate(snum) if s.level > 4)\n", " if i is None:\n", " return False\n", " else: # the exploding pair is: [snum[i], snum[i + 1]]\n", " if i - 1 >= 0: # The pair's left value is added to the number to the left\n", " snum[i - 1].n += snum[i].n\n", " if i + 2 < len(snum): # The pair's right value is added to the number to the right\n", " snum[i + 2].n += snum[i + 1].n\n", " snum[i:i+2] = [Num(0, snum[i].level - 1)] # Replace the pair with a `0`\n", " return True" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here are routines to convert from a string into an `Snum`, and from an `Snum` to a `Tree`:" ] }, { "cell_type": "code", "execution_count": 89, "metadata": {}, "outputs": [], "source": [ "def snum_from_str(snum_str: str) -> Snum:\n", " \"\"\"Convert a string representing a snailfish number into an Snum (a list of Nums).\"\"\"\n", " level = 0\n", " result = []\n", " # Break the string into pieces, e.g. '[[7,8],10]' => '[[', '7', ',', '8', '],', '10', ']'\n", " for piece in re.split(r'(\\d+)', snum_str):\n", " if piece[0] in '0123456789':\n", " result.append(Num(int(piece), level))\n", " else:\n", " level += piece.count('[') - piece.count(']')\n", " return result\n", " \n", "def tree_from_snum(snum) -> Tree:\n", " \"\"\"Convert an Snum into a nested tree of two-element pairs.\"\"\"\n", " q = deque(snum)\n", " def grab(level):\n", " return (q.popleft().n if q[0].level == level \n", " else [grab(level + 1), grab(level + 1)])\n", " return grab(level=0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Finally, the **magnitude**. I can't see an easy way to directly compute it on an `Snum`, so I'll convert to a `Tree` first." ] }, { "cell_type": "code", "execution_count": 90, "metadata": {}, "outputs": [], "source": [ "def snum_magnitude(snum) -> int: \n", " \"\"\"The magnitude of a pair is 3 times the magnitude of its left element \n", " plus 2 times the magnitude of its right element. \n", " The magnitude of a regular number is just that number.\"\"\"\n", " def mag(tree): return tree if is_int(tree) else 3 * mag(tree[0]) + 2 * mag(tree[1])\n", " return mag(tree_from_snum(snum))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now the puzzle solution:" ] }, { "cell_type": "code", "execution_count": 91, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 18.1: 16.2 msec, correct answer: 4457 " ] }, "execution_count": 91, "metadata": {}, "output_type": "execute_result" } ], "source": [ "homework = mapt(snum_from_str, in18)\n", "\n", "answer(18.1, 4457, lambda: snum_magnitude(functools.reduce(snum_add, homework)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Great! It worked the first time! That justifies my choice of a flat list as the easiest representation for `Snum`.\n", "\n", "- **Part 2**: **What is the largest magnitude of any sum of two different snailfish numbers from the homework assignment?**\n", "\n", "My implementation is fast enough that I can try all possibilities:\n" ] }, { "cell_type": "code", "execution_count": 92, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 18.2: 321.7 msec, correct answer: 4784 " ] }, "execution_count": 92, "metadata": {}, "output_type": "execute_result" } ], "source": [ "answer(18.2, 4784, lambda:\n", " max(snum_magnitude(snum_add(L, R)) \n", " for L in homework \n", " for R in homework if L != R))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 19](https://adventofcode.com/2021/day/19): Beacon Scanner \n", "\n", "- **Input**: The input is a sequence of *scanner reports*, where each report is a list of the relative three-dimensional distances to beacons that the scanner can see.\n", "\n", "I'll `parse` the input into paragraphs, then split each paragraphs into lines, ignoring the first line with the scanner number, and parsing the remaining lines of each section into a sequence of 3D points, and collecting them into an object of type `Scanner`, which I define as a subclass of `set`. " ] }, { "cell_type": "code", "execution_count": 93, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 998 strs of size 0 to 18:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "--- scanner 0 ---\n", "-812,-728,-591\n", "-259,678,-532\n", "735,-470,492\n", "-808,-734,-657\n", "518,-635,-807\n", "-487,402,391\n", "722,545,-708\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 36 Scanners of size 25 to 27:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Scanner({(114, 15, -132), (587, -480, 480), (-326, 616, -504), (735, -470, 492), (-487, 402, 391 ...\n", "Scanner({(-403, -500, 596), (745, -802, -648), (-386, -616, 490), (693, 557, -710), (650, -523, ...\n", "Scanner({(-458, -744, -723), (-701, 614, -530), (774, 676, 455), (-522, -801, -721), (640, -448, ...\n", "Scanner({(-173, 51, -105), (386, -489, -727), (-407, -676, -904), (-703, -449, 648), (-655, 577, ...\n", "Scanner({(468, 575, -917), (800, -826, 791), (-453, 667, -530), (-24, 2, -135), (-418, -589, 365 ...\n", "Scanner({(-460, 592, 573), (-580, 496, -693), (759, 628, 545), (685, -519, -419), (849, -900, 64 ...\n", "Scanner({(-562, 815, 894), (369, -298, 651), (-857, -729, 708), (-906, -735, 758), (695, -432, - ...\n", "Scanner({(-642, 294, 266), (-634, 281, 431), (496, -458, 611), (492, 501, 528), (-709, -537, 525 ...\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "class Scanner(set):\n", " \"\"\"A Scanner is a set of points representing the beacons that the scanner can see.\"\"\"\n", " \n", "in19 = parse(19, lambda paragraph: Scanner(parse(paragraph, ints)[1:]), paragraphs)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 1**: Unfortunately, while each scanner can report the positions of all detected beacons relative to itself, the scanners do not know their own position. You'll need to determine the positions of the beacons and scanners yourself. Unfortunately, there's a second problem: the scanners also don't know their rotation or facing direction. Assemble the full map of beacons. **How many beacons are there?**\n", "\n", "The first thing I want to do is figure out how important efficiency is. `parse` said there are only 36 scanners. On average, how many beacons does each scanner see?" ] }, { "cell_type": "code", "execution_count": 94, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "25.75" ] }, "execution_count": 94, "metadata": {}, "output_type": "execute_result" } ], "source": [ "mean(map(len, in19))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Not too bad; I was worried there could be thousands of beacons. There are:\n", " - *S* = 36 scanners\n", " - *B* = 26 mean beacons per scanner\n", " - 24 orientations of each scanner (per the instructions)\n", "\n", "At first I was confused: I thought that if there are 3! permutations of `(x, y, z)`, and 23 ways to have or not have a minus sign on each dimension, then there should be 6 × 8 = 48 different orientations. But the instructions say 24. I decided that if you don't permute (x, y, z), and just negate the x component, that's equivalent to a mirror image, which we don't want. You can get a mirroring with a minus sign on any of the three components, or by reversing the order of the components (e.g. `(x, y, z)` going to `(z, y, x)`) but not if you just rotate the order (e.g. `(x, y, z)` going to `(z, x, y)`). Two mirrorings reverse things back to normal, so the 24 valid orientations are those with a rotation and an even number of minus signs, or a reversal in the ordering and an odd number of minus signs. \n", "\n", "Since I'm going to be applying these transforms often, I will compile them into functions. I'll do that by constructing strings and then applying `eval` to each string." ] }, { "cell_type": "code", "execution_count": 95, "metadata": {}, "outputs": [], "source": [ "def transformers(signs, orders) -> list[Callable]: \n", " \"\"\"Strings that define 3D transformations of signs and variable ordering.\"\"\"\n", " return [transformer(f'({a}{x}, {b}{y}, {c}{z})')\n", " for a,b,c in signs for x,y,z in orders]\n", "\n", "def transformer(transform: str) -> Callable:\n", " \"\"\"Turn this transformer string into a callable function.\"\"\"\n", " fn = eval('lambda points: {' + transform + ' for x, y, z in points}')\n", " fn.__name__ = 'Orient' + transform\n", " return fn\n", "\n", "orient_fns = (transformers([' ', '-- ', ' --', '- -'], ['xyz', 'yzx', 'zxy']) + \n", " transformers(['---', '- ', ' - ', ' -'], ['zyx', 'xzy', 'yxz']))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here's a test applying the 24 orientation functions to a tiny set `B` of 2 beacons:" ] }, { "cell_type": "code", "execution_count": 96, "metadata": {}, "outputs": [], "source": [ "assert len(orient_fns) == 24\n", "\n", "B = {(1, 2, 3), (-4, -5, -6)}\n", "\n", "assert [(fn.__name__, fn(B)) for fn in orient_fns] == [\n", " ('Orient( x, y, z)', {(-4, -5, -6), (1, 2, 3)}),\n", " ('Orient( y, z, x)', {(-5, -6, -4), (2, 3, 1)}),\n", " ('Orient( z, x, y)', {(-6, -4, -5), (3, 1, 2)}),\n", " ('Orient(-x, -y, z)', {(-1, -2, 3), (4, 5, -6)}),\n", " ('Orient(-y, -z, x)', {(-2, -3, 1), (5, 6, -4)}),\n", " ('Orient(-z, -x, y)', {(-3, -1, 2), (6, 4, -5)}),\n", " ('Orient( x, -y, -z)', {(-4, 5, 6), (1, -2, -3)}),\n", " ('Orient( y, -z, -x)', {(-5, 6, 4), (2, -3, -1)}),\n", " ('Orient( z, -x, -y)', {(-6, 4, 5), (3, -1, -2)}),\n", " ('Orient(-x, y, -z)', {(-1, 2, -3), (4, -5, 6)}),\n", " ('Orient(-y, z, -x)', {(-2, 3, -1), (5, -6, 4)}),\n", " ('Orient(-z, x, -y)', {(-3, 1, -2), (6, -4, 5)}),\n", " ('Orient(-z, -y, -x)', {(-3, -2, -1), (6, 5, 4)}),\n", " ('Orient(-x, -z, -y)', {(-1, -3, -2), (4, 6, 5)}),\n", " ('Orient(-y, -x, -z)', {(-2, -1, -3), (5, 4, 6)}),\n", " ('Orient(-z, y, x)', {(-3, 2, 1), (6, -5, -4)}),\n", " ('Orient(-x, z, y)', {(-1, 3, 2), (4, -6, -5)}),\n", " ('Orient(-y, x, z)', {(-2, 1, 3), (5, -4, -6)}),\n", " ('Orient( z, -y, x)', {(-6, 5, -4), (3, -2, 1)}),\n", " ('Orient( x, -z, y)', {(-4, 6, -5), (1, -3, 2)}),\n", " ('Orient( y, -x, z)', {(-5, 4, -6), (2, -1, 3)}),\n", " ('Orient( z, y, -x)', {(-6, -5, 4), (3, 2, -1)}),\n", " ('Orient( x, z, -y)', {(-4, -6, 5), (1, 3, -2)}),\n", " ('Orient( y, x, -z)', {(-5, -4, 6), (2, 1, -3)})\n", "]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "That looks good. The next step is to find pairs of scanners that can see the same beacons. The instructions say that every scanner has at least one other scanner with which it shares at least 12 detected beacons. How can I find the matches, and do it efficiently? Some options:\n", "1. For every pair of scanners, I could apply every orientation transformation to *one of them, then try every alignment of a point in that transformation to a point in the other scanner, then count the number of matching points with that alignment, and see if the count exceeds 12. Total complexity: 24 *S*2 *B*3 operations.\n", "2. For every scanner, compute the distance between each pair of points. (This set of distances will be invariant under orientation transformations, so we've saved a factor of 24.) Now compare distance sets between pairs of scanners and see which ones exceed 12×11/2 = 66 matches. Total complexity: *S* *B*2 + *S*2*B*2 operations. (Note: we actually store squared distances, not distances, to avoid possible round-off error and to save the runtime cost of computing square roots.)\n", "\n", "Option 2 it is! The algorithm will be:\n", "\n", " keep track of lists of `aligned` and `unaligned` scanners\n", " add the first unaligned scanner to the list of aligned scanners\n", " whenever an aligned scanner is added:\n", " check to see if each unaligned can scanner can be aligned with it\n", " while there are unaligned scanners:\n", " pop off one unaligned scanner S\n", " find an unaligned scanner R that c\n", " \n", "**NOTE: I started below, but did not complete the solution.**" ] }, { "cell_type": "code", "execution_count": 97, "metadata": {}, "outputs": [], "source": [ "def align_scanners(scanners, k=12) -> set[Point]:\n", " \"\"\"Align all scanners\"\"\"\n", " for S in scanners:\n", " S.distances2 = {distance2(p, p2) for p, p2 in combinations(S, 2)}\n", " aligned, unaligned = [], scanners\n", " return align_scanner(unaligned.pop(), aligned, unaligned, k)\n", "\n", "def add_aligned_scanner(S, aligned, unaligned, k) -> list[Scanner]:\n", " \"\"\"Add S to aligned; recursively align other scanners with S; return aligned.\"\"\"\n", " aligned.append(S)\n", " unaligned.remove(S)\n", " for R in unaligned.copy():\n", " if R not in aligned and len(S.distances2 & R.distances2) >= k * (k - 1) // 2:\n", " add_aligned_scanner(align(R, S), aligned, unaligned, k)\n", " \n", "def distance2(p: Point, p2: Point) -> int:\n", " \"\"\"Squared distance between two 3D points.\"\"\"\n", " return (p[0]-p2[0]) ** 2 + (p[1]-p2[1]) ** 2 + (p[2]-p2[2]) ** 2\n", "\n", "def align(R: Scanner, S: Scanner, k=12) -> Scanner:\n", " \"Orient and offset Scanner R to align with Scanner S; return the new version of R.\"\n", " for orient in orient_fns:\n", " R2 = orient(R)\n", " for offset in offsets(S1, A):\n", " S2 = Scanner(add3D(s, offset) for s in S)\n", " if len(S2 & A) >= k:\n", " S2.distances2 = S.distances2\n", " return S2\n", " raise ValueError(\"Can't align scanners\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now that we can find two scanners that are alignable, we have to actually align them:" ] }, { "cell_type": "code", "execution_count": 98, "metadata": {}, "outputs": [], "source": [ "def offsets(S, A) -> Iterator[Point]:\n", " \"\"\"All offsets that would make some point in S align with some point in A.\"\"\"\n", " return (minus3D(a, s) for s in S for a in A)\n", "\n", "def minus3D(A: Point, B: Point) -> Point:\n", " return (A[0] - B[0], A[1] - B[1], A[2] - B[2])\n", "\n", "def add3D(A: Point, B: Point) -> Point:\n", " return (A[0] + B[0], A[1] + B[1], A[2] + B[2])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 20](https://adventofcode.com/2021/day/20): Trench Map\n", "\n", "- **Input**: The input is first, a 512-character string describing an image enhancement algorithm; second a blank line; and third a grid of pixels depicting an image. I'll convert the image to a grid:" ] }, { "cell_type": "code", "execution_count": 99, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 102 strs of size 0 to 512:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "#.#..##...###..#.#....#######.###..#.#.##.####.###.####.#..###..##..#..##.######...####..#.#...# ...\n", "\n", ".##.#...#.#.##.##.#.#.#.##..#.#..###..##..##...#....#..###..#...#...######.###..#..#.#####.###...#.#\n", ".#.###..#..#...#...#..#.#.##...##......##......#.#.#####....#..##.#.#..#..##.#..###.##..#..#.###.#.#\n", "#.#.....####.###.#.##.#...##..####..#...#.#...##.#.#.#.#.##.###.###.#.#.###..######......###.#.#.##.\n", "#..#####.###........#..#..#...##.#.##.#..#.....####.#...#..#.#.###..#..###.......#.#......#.##.#.#.#\n", "###..#...#..#.##..#####.#.#..#...#.##..###.#..#.#....#..##.#...#.#.##..###.....###.##.###.#...###..#\n", "....##...####...#.##.#.#..##.####..#.#.#.......#.########.#...#..#.##..#.####.#...####...##.#..#...#\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 102 strs of size 0 to 512:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "#.#..##...###..#.#....#######.###..#.#.##.####.###.####.#..###..##..#..##.######...####..#.#...# ...\n", "\n", ".##.#...#.#.##.##.#.#.#.##..#.#..###..##..##...#....#..###..#...#...######.###..#..#.#####.###...#.#\n", ".#.###..#..#...#...#..#.#.##...##......##......#.#.#####....#..##.#.#..#..##.#..###.##..#..#.###.#.#\n", "#.#.....####.###.#.##.#...##..####..#...#.#...##.#.#.#.#.##.###.###.#.#.###..######......###.#.#.##.\n", "#..#####.###........#..#..#...##.#.##.#..#.....####.#...#..#.#.###..#..###.......#.#......#.##.#.#.#\n", "###..#...#..#.##..#####.#.#..#...#.##..###.#..#.#....#..##.#...#.#.##..###.....###.##.###.#...###..#\n", "....##...####...#.##.#.#..##.####..#.#.#.......#.########.#...#..#.##..#.####.#...####...##.#..#...#\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "in20 = parse(20)\n", "rules = in20[0]\n", "image = Grid(in20[2:])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 1**: Start with the original input image and apply the image enhancement algorithm twice, being careful to account for the infinite size of the images. **How many pixels are lit in the resulting image?**" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**It is a truth universally acknowledged,** that an Eric Wastl in possession of an Advent of Code, must be in want of a [Life](https://en.wikipedia.org/wiki/Conway%27s_Game_of_Life) puzzle. This is it! The \"image enhancement algorithm\" defines how pixels turn on and off. I've done Life before, e.g. [here](Life.ipynb) and [here](https://adventofcode.com/2020/day/17). This should be easy! \n", "\n", "**Unfortunately**, there's a twist: spontaneous generation. I was ***shocked*** to find `rules[0] == '#'` in my enhancement rules. (Sneaky work, Eric: That possibility wasn't mentioned in the instructions.) This violates everything I know about *life*! It means that every dark pixel in the middle of empty dark space will spontaneously become light pixel in the next generation, resulting in an infinite number of light pixels.\n", "\n", "\n", "\n", "**Fortunately**, `rules[255] == '.'`, which means that almost all of the infinite number of light pixels will become dark again in the following generation. It's as if we convert between a positive image and a negative on each enhancement.\n", "\n", "Therefore, my strategy will be:\n", "- In generation 0 (and every even generation) we will have a finite set of *light* pixels. Use them to generate a finite set of *dark* pixels.\n", "- In generation 1 (and every odd generation), we will have a finite set of *dark* pixels. Use them to generate a finite set of *light* pixels.\n", "- Generating a dark pixel requires at least one neighboring light pixel, and generating a light pixel requires at least one neighboring dark pixel. So to know what pixels to consider as candidates for the next generation, I can use the current set of pixels and their neighbors. So I won't need the `Grid`, just the `set` of light pixels in it. I'll create a subclass of `set` called `Pixels` which is just like `set` but keeps track of the `.color` of pixels, light or dark." ] }, { "cell_type": "code", "execution_count": 100, "metadata": {}, "outputs": [], "source": [ "light = '#'\n", "dark = '.'\n", "\n", "class Pixels(set):\n", " \"\"\"A set of pixel Points; self.color says if they are light or dark.\"\"\"\n", " def __init__(self, pixels, color=light):\n", " self.update(pixels)\n", " self.color = color\n", "\n", "def enhance(pixels, n=1, rules=rules) -> Pixels:\n", " \"\"\"The set of pixels that result from applying enhancement rules `n` times.\"\"\"\n", " for generation in range(n):\n", " candidate_pixels = set(flatten(map(neighborhood, pixels)))\n", " negative = dark if pixels.color == light else light\n", " pixels = Pixels((p for p in candidate_pixels\n", " if rules[pixel_sum(p, pixels)] == negative),\n", " negative)\n", " return pixels\n", "\n", "def pixel_sum(point, pixels):\n", " \"\"\"The sum of the 9 pixels in the neighborhood. If `pixels.color == light`,\n", " add up the neighborhood points that are in `pixels`; if not,\n", " add up the neighborhood points that are not in `pixels`.\"\"\"\n", " return sum((256 >> i) * ((p in pixels) == (pixels.color == light))\n", " for i, p in enumerate(neighborhood(point)))\n", "\n", "def neighborhood(point) -> list[Point]:\n", " \"The nine points surrounding `point` (including `point` itself).\"\n", " (x, y) = point\n", " return [(x-1, y-1), (x, y-1), (x+1, y-1), \n", " (x-1, y), (x, y), (x+1, y), \n", " (x-1, y+1), (x, y+1), (x+1, y+1)]\n", "\n", "pixels = Pixels(p for p in image if image[p] == light) # pixels in my image" ] }, { "cell_type": "code", "execution_count": 101, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 20.1: 29.7 msec, correct answer: 5437 " ] }, "execution_count": 101, "metadata": {}, "output_type": "execute_result" } ], "source": [ "answer(20.1, 5437, lambda: len(enhance(pixels, 2)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 2**: Start again with the original input image and apply the image enhancement algorithm 50 times. **How many pixels are lit in the resulting image?**\n" ] }, { "cell_type": "code", "execution_count": 102, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 20.2: 1,684.6 msec, correct answer: 19340 " ] }, "execution_count": 102, "metadata": {}, "output_type": "execute_result" } ], "source": [ "answer(20.2, 19340, lambda: len(enhance(pixels, 50)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 21](https://adventofcode.com/2021/day/21): Dirac Dice\n", "\n", "\n", "We're playing a two-player game with the following rules: On each turn a player rolls the die three times, adds them up, and moves forward that many spaces on a circular board consisting of spaces marked 1 to 10; space 10 wraps around to 1. The player increases their score by the space they land on; first player to 1000 points wins.\n", "\n", "- **Input**: My input is the text \"`Player 1 starting position: 5 \\ Player 2 starting position: 6`\".\n", "\n", "I won't bother to read this from the file; I'll just translate it into this statement:" ] }, { "cell_type": "code", "execution_count": 103, "metadata": {}, "outputs": [], "source": [ "start_positions = (5, 6)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 1**: Play a practice game using the deterministic 100-sided die. The moment either player wins, **what do you get if you multiply the score of the losing player by the number of times the die was rolled during the game?**\n", "\n", "I'll implement a deterministic die as an iterator: `cycle(range(1, 101)` returns 1 first, then 2, etc. up to 100, then goes back to 1. My function `play_dice` keeps track of positions and scores for both players and returns the product of the number of dice rolled times the loser's score." ] }, { "cell_type": "code", "execution_count": 104, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 21.1: 0.1 msec, correct answer: 1002474 " ] }, "execution_count": 104, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def play_dice(die: Iterator, positions=start_positions, target=1000) -> int:\n", " \"\"\"Play the dice game with the given die until someone scores `target`.\n", " Return total_number_of_dice_rolled * loser_score.\"\"\"\n", " positions = list(positions)\n", " scores = [0, 0]\n", " for turn in count_from(1):\n", " player = (turn - 1) % 2\n", " roll = next(die) + next(die) + next(die)\n", " positions[player] = clock_mod(positions[player] + roll, 10)\n", " scores[player] += positions[player]\n", " if scores[player] >= 1000:\n", " return 3 * turn * min(scores)\n", " \n", "answer(21.1, 1002474, lambda: play_dice(die=cycle(range(1, 101))))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 2**: This time we play with a quantum die. Using your given starting positions, determine every possible outcome. **Find the player that wins in more universes; in how many universes does that player win?**\n", "\n", "A three-sided quantum die splits the universe into three copies every time it is rolled: one where the outcome of the roll was 1, one where it was 2, and one where it was 3. We need to track all these universes. But for this game a player only needs 21 points to win; not 1000.\n", "\n", "The instructions warn us that there will be *trillions* of universes, so I'm concerned about efficiency. I must avoid enumerating all possibile universes one by one. I should either use a `Counter` of game states (as with the lanternfish in Day 6), or use dynamic programming (which I can implement with caching on a recursive function). \n", "\n", "I decided to go with the recursive function. I'll define `play_dice2(pos1, pos2, score1, score2, target)` as a function that returns a tuple of (number of wins, number of losses) for player 1, given the positions of the two players, the scores of the two players, and the target winning score, under the assumption that it is player 1's turn to roll. Note that in the recursive call to `play_dice2` it is player 2's turn, so the arguments and return values are swapped. I did it this way, rather than have two-element sequences for the positions and scores, because this way cuts in half the number of different game states I have to track." ] }, { "cell_type": "code", "execution_count": 105, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 21.2: 52.4 msec, correct answer: 919758187195363" ] }, "execution_count": 105, "metadata": {}, "output_type": "execute_result" } ], "source": [ "dice3_rolls = mapt(sum, cross_product([1, 2, 3], repeat=3))\n", "\n", "@cache\n", "def play_dice2(pos1, pos2, score1, score2, target) -> tuple[int, int]:\n", " \"\"\"The number of (winning universes, losing universes) for player 1,\n", " given that player 1 is at `pos1` with `score1` points (and likewise for player 2).\"\"\"\n", " wins, losses = 0, 0\n", " if score2 >= target: # Player 2 has won; record a loss for player 1\n", " losses += 1 \n", " else: # Player 1 takes their turn; then count wins and loses for the game\n", " for roll in dice3_rolls:\n", " newpos1 = clock_mod(pos1 + roll, 10)\n", " roll_losses, roll_wins = play_dice2(pos2, newpos1, score2, score1 + newpos1, target)\n", " wins += roll_wins\n", " losses += roll_losses\n", " return wins, losses\n", "\n", "answer(21.2, 919758187195363, lambda: max(play_dice2(*start_positions, 0, 0, 21)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "I had some ideas to make this more efficient (such as iterating over a Counter of `dice3_rolls`) but it is fast enough as is.\n", "\n", "How many different game states did we explore?" ] }, { "cell_type": "code", "execution_count": 106, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "CacheInfo(hits=451197, misses=24841, maxsize=None, currsize=24841)" ] }, "execution_count": 106, "metadata": {}, "output_type": "execute_result" } ], "source": [ "play_dice2.cache_info()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Only 24,841 distinct game states." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 22](https://adventofcode.com/2021/day/22): Reactor Reboot\n", "\n", "- **Input**: The input is a list of steps for rebooting the ship's reactor, such as \"`on x=10..12,y=10..12,z=10..12`\".\n", "\n", "I'll parse each line into a tuple consisting of either `\"on\"` or `\"off\"` followed by three ranges (using `cover` because the high end is inclusive):" ] }, { "cell_type": "code", "execution_count": 107, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 420 strs of size 29 to 54:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "on x=-31..17,y=-17..30,z=-43..8\n", "on x=-6..44,y=-24..30,z=-8..39\n", "on x=0..49,y=-19..25,z=-12..38\n", "on x=-31..14,y=-46..5,z=-43..9\n", "on x=-42..3,y=-28..23,z=-25..28\n", "on x=-20..26,y=-13..35,z=-36..8\n", "on x=-26..27,y=-27..25,z=-11..38\n", "on x=-42..11,y=-14..40,z=-23..24\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 420 tuples of size 4:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "('on', range(-31, 18), range(-17, 31), range(-43, 9))\n", "('on', range(-6, 45), range(-24, 31), range(-8, 40))\n", "('on', range(0, 50), range(-19, 26), range(-12, 39))\n", "('on', range(-31, 15), range(-46, 6), range(-43, 10))\n", "('on', range(-42, 4), range(-28, 24), range(-25, 29))\n", "('on', range(-20, 27), range(-13, 36), range(-36, 9))\n", "('on', range(-26, 28), range(-27, 26), range(-11, 39))\n", "('on', range(-42, 12), range(-14, 41), range(-23, 25))\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "Step = tuple[str, range, range, range]\n", "\n", "def parse_reboot_step(line: str) -> Step:\n", " \"\"\"Parse a line into a reboot step description.\"\"\"\n", " x1, x2, y1, y2, z1, z2 = ints(line)\n", " return (line.split()[0], cover(x1, x2), cover(y1, y2), cover(z1, z2))\n", "\n", "in22 = parse(22, parse_reboot_step)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The intent of each step is to turn on or off all the individual cubes in the reactor core that are within the *cuboid* specified by the three ragnes. So a 3x3x3 cuboid specifies 27 cubes.\n", "\n", "- **Part 1**: Execute the reboot steps. Afterward, considering only cubes in the region x=-50..50,y=-50..50,z=-50..50, **how many cubes are on?**\n", "\n", "[I have a bad feeling about this](https://www.youtube.com/watch?v=S74rvpc6W60). The example in the instructions has a small enough number of cubes that we can just brute-force enumerate them. But I suspect in Part 2 there will be trillions of cubes and brute force willl no longer work. [It's a trap!](https://www.youtube.com/watch?v=4F4qzPbcFiA) \n", "\n", "Still, I'll go ahead and do the brute-force enumeration for Part 1: for each step that describes a cuboid that falls within the region, form the set of all the cubes in the cuboid, and add or subtract them from a running set of `cubes`. Each cube is denoted by a single `(x, y, z)` triple of integer coordinates. Note that it is guaranteed that every step describes a cuboid that is either entirely within or entirely outside the position range -50..50 on all three dimensions, so I only need to check one of the three dimensions." ] }, { "cell_type": "code", "execution_count": 108, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 22.1: 304.2 msec, correct answer: 533863 " ] }, "execution_count": 108, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def count_cubes(steps, region=cover(-50, 50)) -> int:\n", " \"\"\"Follow `steps` to turn on or off those cubes that are in `region`, and count 'on' cubes.\"\"\"\n", " cubes = set()\n", " for (flip, xs, ys, zs) in steps:\n", " if xs.start < region.start or xs.stop > region.stop:\n", " pass # step is outside the region\n", " elif flip == \"on\":\n", " cubes |= set(cross_product(xs, ys, zs))\n", " else:\n", " cubes -= set(cross_product(xs, ys, zs))\n", " return len(cubes) \n", "\n", "answer(22.1, 533863, lambda: count_cubes(in22))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 2**: Starting again with all cubes off, execute all reboot steps. Afterward, considering all cubes, **how many cubes are on?**\n", "\n", "Well, I was *wrong*. There aren't going to be *trillions* of cubes; there are going to be *quadrillions*. \n", "\n", "I will need a way to handle steps without explicitly enumerating the cubes. If no cuboids intersected, it would be easy: for each \"on\" cuboid, multiply the lengths of the three sides to get the volume, then add up the volumes. But the intersections complicate things.\n", "\n", "I'll start with some [exploratory data analysis](https://en.wikipedia.org/wiki/Exploratory_data_analysis) to answer some questions.\n", "\n", "**Question**: how many of the steps are \"on\"?" ] }, { "cell_type": "code", "execution_count": 109, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Counter({'on': 308, 'off': 112})" ] }, "execution_count": 109, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Counter(step[0] for step in in22)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Answer**: There are 420 steps, of which about 3/4 are \"on\" steps.\n", "\n", "**Question**: How big are the cuboids? " ] }, { "cell_type": "code", "execution_count": 110, "metadata": {}, "outputs": [ { "data": { "image/png": "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AIoSPgCAooQPAKAo4QMAKEr4AACKEj4AgKKEDwCgKOEDAChK+AAAihI+AICihA8AoCjhAwAoSvgAAIoSPgCAooQPAKAo4QMAKEr4AACKEj4AgKKEDwCgqN3KLg5q17Cp97VqvtdmjunwdQHozLR8AABFCR8AQFHCBwBQlPABABQlfAAARQkfAEBRwgcAUJTnfMAu5NkgQD3S8gEAFCV8AABFCR8AQFHCBwBQlPABABQlfAAARQkfAEBRwgcAUJTwAQAUJXwAAEUJHwBAUcIHAFCU8AEAFCV8AABFCR8AQFHCBwBQlPABABQlfAAARQkfAEDnDh+PPvpoOuOMM9KQIUNSt27d0j333NPk/Uqlkq666qq07777pt133z2NGjUqvfzyy+25zgBAPYWP9evXp6OOOirNmjWrxfevu+66dPPNN6fbbrstPf7442nPPfdMo0ePThs2bGiP9QUAurjd2voLp59+ep5aEq0eN954Y/rCF76Qxo4dm1/75je/mQYNGpRbSM4+++ydX2MAoEtr1zEfr776alq5cmXuaqnq169fOuGEE9LixYtb/J2NGzemdevWNZkAgNrVruEjgkeIlo7G4ufqe83NmDEjB5TqtP/++7fnKgEAncwuv9tl2rRpae3atQ3T8uXLd/UqAQBdJXwMHjw4/7tq1aomr8fP1fea69WrV+rbt2+TCQCoXe0aPg488MAcMhYuXNjwWozhiLteRowY0Z6LAgDq5W6XN998M73yyitNBpk+++yzacCAAWno0KFp0qRJ6Ytf/GI65JBDchi58sor8zNBzjzzzPZedwCgHsLHU089lT760Y82/DxlypT874QJE9KcOXPS5z73ufwskAsvvDCtWbMmfehDH0oPPPBA6t27d/uuOQBQH+HjlFNOyc/z2Jp46um1116bJwCATne3CwBQX9rc8gH1YNjU+1o972szx3TougDUGi0fAEBRwgcAUJTwAQAUJXwAAEUJHwBAUcIHAFCU8AEAFOU5H1DjWvvMkp15XkmJZQC1Q8sHAFCU8AEAFCV8AABFCR8AQFHCBwBQlPABABQlfAAARXnOB3QhnqcB1AItHwBAUcIHAFCU8AEAFCV8AABFCR8AQFHCBwBQlPABABTlOR9AE54lAnQ0LR8AQFHCBwBQlPABABQlfAAARQkfAEBRwgcAUJTwAQAUJXwAAEUJHwBAUcIHAFCU8AEAFCV8AABFCR8AQFHCBwBQlPABABS1W9nFAfyfYVPva9WueG3mmFTv217P+4rapOUDAChK+AAAihI+AICihA8AoCjhAwAoSvgAAIoSPgCAooQPAKAo4QMAKEr4AACKEj4AgKKEDwCgKOEDAChK+AAAihI+AICidiu7OIAdM2zqfa2a77WZY4ouo8R67Yi2rldn3Q5qk5YPAKAo4QMAKEr4AACKEj4AgKKEDwCgKOEDAChK+AAAivKcD6BmeXZF51Pi+SOd9ZkwJQzrpOvVnJYPAKAo4QMAKEr4AABqI3zMmjUrDRs2LPXu3TudcMIJ6YknnuioRQEA9R4+7r777jRlypR09dVXp2eeeSYdddRRafTo0Wn16tUdsTgAoN7Dx/XXX58uuOCCdN5556XDDz883XbbbWmPPfZI3/jGNzpicQBAPd9qu2nTpvT000+nadOmNbzWvXv3NGrUqLR48eJ3zL9x48Y8Va1duzb/u27dutQRtmx8q1XzVZff2vl35Hcab2NHrVeJZXTW9bLtnXf/dtb1su1t2787orOWSVuVWEZXW6/qZ1Yqle3PXGlnv/jFL2Kplccee6zJ65dffnnl+OOPf8f8V199dZ7fZB84BhwDjgHHgGMgdfl9sHz58u1mhV3+kLFoIYnxIVVbtmxJv/71r9PAgQNTt27d2jWR7b///mn58uWpb9++qZ7U87YH26/86/X4d+w79vcveOxHi8cbb7yRhgwZst152z187L333uld73pXWrVqVZPX4+fBgwe/Y/5evXrlqbH+/funjhIFUG8noKp63vZg+5V/vR7/jn3Hft9Cx36/fv12zYDTnj17pmOOOSYtXLiwSWtG/DxixIj2XhwA0MV0SLdLdKNMmDAhHXvssen4449PN954Y1q/fn2++wUAqG8dEj7OOuus9Mtf/jJdddVVaeXKlemDH/xgeuCBB9KgQYPSrhJdO/HckeZdPPWgnrc92H7lX6/Hv2PfsX91Jz32u8Wo0129EgBA/fDdLgBAUcIHAFCU8AEAFCV8AABF1UX4mDVrVho2bFjq3bt3OuGEE9ITTzyR6sE111yTnxLbeBo+fHiqVY8++mg644wz8tP1YlvvueeeJu/H2Oq4A2vfffdNu+++e/6+oZdffjnVy/afe+657zgePv7xj6daMGPGjHTcccelPn36pH322SedeeaZaenSpU3m2bBhQ5o4cWJ+evJee+2Vxo8f/46HIdby9p9yyinvKP+LLroodXW33nprOvLIIxsepBbPk7r//vvrotxbs/2dtdxrPnzcfffd+bkjcbvRM888k4466qg0evTotHr16lQP3v/+96fXX3+9YfrBD36QalU8SybKN8JmS6677rp08803529Zfvzxx9Oee+6Zj4U4OdXD9ocIG42Ph7vuuivVgkWLFuUKZsmSJenBBx9MmzdvTqeddlreJ1WTJ09OCxYsSPPmzcvzr1ixIo0bNy7Vy/aH+LbxxuUffxNd3X777ZdmzpyZv9D0qaeeSiNHjkxjx45NL774Ys2Xe2u2v9OWe6XGxZfZTZw4seHnt99+uzJkyJDKjBkzKrUuvrTvqKOOqtSjOLTnz5/f8POWLVsqgwcPrnz5y19ueG3NmjWVXr16Ve66665KrW9/mDBhQmXs2LGVerB69eq8DxYtWtRQ1j169KjMmzevYZ4f//jHeZ7FixdXan37w0c+8pHKZZddVqkH7373uytf//rX667cm29/Zy73mm752LRpU06D0bxe1b179/zz4sWLUz2IboVohj/ooIPSOeeck5YtW5bq0auvvpofeNf4WIjvIIhuuHo5FsIjjzySm+UPPfTQdPHFF6f//u//TrVo7dq1+d8BAwbkf+M8EK0Bjcs/uiCHDh1ak+XffPur7rjjjvz9W0cccUT+Us+33mrd1693FW+//XaaO3dubvGJ7od6K/e3m21/Zy73Xf6tth3pV7/6VS6M5k9WjZ9/8pOfpFoXFeucOXNyRRNNbdOnT08f/vCH0wsvvJD7hutJBI/Q0rFQfa/WRZdLNDcfeOCB6ac//Wn6/Oc/n04//fR8Eo4vg6wV8V1SkyZNSieddFI+2YYo4/jeqeZfWlmL5d/S9odPfvKT6YADDsgXI88991y64oor8riQ73znO6mre/7553NlG12oMa5j/vz56fDDD0/PPvtsXZT781vZ/s5c7jUdPupdVCxVMSApwkgchN/61rfS+eefv0vXjfLOPvvshv//wAc+kI+J9773vbk15NRTT62ZIomxDxGwa3l8045s/4UXXtik/GPgdZR7BNE4DrqyuMCKoBEtPt/+9rfzd4vF+I56cehWtj8CSGct95rudolmpriiaz6yOX4ePHhwqjeR/t/3vvelV155JdWbank7Fv6/6IqLv5FaOh4uueSSdO+996aHH344D8RrXP7RDbtmzZqaPhdsbftbEhcjoRbKP1o3Dj744PyN6nHnTwy8vummm+qm3HtuZfs7c7nXdPiIAonCWLhwYZMmyfi5cX9YvXjzzTdz2o3kW2+iqyFONo2PhXXr1uW7XurxWAg///nP85iPWjgeYoxtVLzR3PzQQw/l8m4szgM9evRoUv7R9BxjoGqh/Le3/S2JK+VQC+XfXJznN27cWPPlvr3t79TlXqlxc+fOzXc0zJkzp/LSSy9VLrzwwkr//v0rK1eurNS6z3zmM5VHHnmk8uqrr1Z++MMfVkaNGlXZe++980j4WvTGG29UfvSjH+UpDu3rr78+///Pfvaz/P7MmTNz2X/3u9+tPPfcc/nOjwMPPLDym9/8plLr2x/vffazn80j/ON4+P73v185+uijK4ccckhlw4YNla7u4osvrvTr1y8f76+//nrD9NZbbzXMc9FFF1WGDh1aeeihhypPPfVUZcSIEXmqBdvb/ldeeaVy7bXX5u2O8o+/gYMOOqhy8sknV7q6qVOn5rt6Yrvi7zp+7tatW+V73/tezZf79ra/M5d7zYeP8Ld/+7f54OvZs2e+9XbJkiWVenDWWWdV9t1337zdv/Vbv5V/joOxVj388MO50m0+xS2m1dttr7zyysqgQYNyID311FMrS5curdTD9kcldNppp1Xe85735FsPDzjggMoFF1xQMyG8pe2Oafbs2Q3zRMj89Kc/nW9D3GOPPSqf+MQncgVdD9u/bNmyXOEMGDAgH/sHH3xw5fLLL6+sXbu20tV96lOfysdznOfi+I6/62rwqPVy3972d+Zy7xb/2bVtLwBAPanpMR8AQOcjfAAARQkfAEBRwgcAUJTwAQAUJXwAAEUJHwBAUcIHAFCU8AEAFCV8AABFCR8AQFHCBwCQSvp/gHQyRQNG2agAAAAASUVORK5CYII=", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "volumes = [len(x) * len(y) * len(z) / 1e12 for (on, x, y, z) in in22]\n", "plt.hist(volumes, rwidth=0.8, bins=36, \n", " label=f'cuboid volume in trillions (mean {mean(volumes):.1f})')\n", "plt.legend();" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Answer**: An average cuboid consists of 7.6 trillion cubes. A big one has 35 trillion, but most are under 10 trillion. \n", "\n", "**Question**: How long are the sides of the cuboids?" ] }, { "cell_type": "code", "execution_count": 111, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAiMAAAGdCAYAAADAAnMpAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjgsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvwVt1zgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAJZ1JREFUeJzt3Q9YVFX+x/Ev+AcwBUNTYAVBLU0FKivyV7mUJpGPK+nTVrqFWVqutilbKWWFbi2s21PWPkg9uyW2m7nZqpWapRa6bahJsaLtuuHKivl3LUAxkeT+nnN+z8yP4Y+KzsyZufN+Pc8N5s7tzjlz7zAfzz3n3CDLsiwBAAAwJNjUCwMAACiEEQAAYBRhBAAAGEUYAQAARhFGAACAUYQRAABgFGEEAAAYRRgBAABGtRcf09DQIPv375cuXbpIUFCQ6eIAAIBzoOZQPXbsmMTExEhwcLB/hxEVRGJjY00XAwAAnIfKykrp1auXf4cR1SLiqEx4eLjp4gAAgHNQU1OjGxMc3+N+HUYcl2ZUECGMAADgX86niwUdWAEAgFGEEQAAYBRhBAAAGOVzfUYAAPDn4a0//PCDnD59WuyoQ4cO0q5dO7fvlzACAIAbnDp1Sg4cOCAnTpywdefUXr16SefOnd26X8IIAABumLBzz549utVATfrVsWNH203caVmWHDlyRPbt2yeXXnqpW1tICCMAALihVUQFEjXPRqdOnWz7fl5yySVSUVEh9fX1bg0jdGAFAMBdX6ptnAbd3wR5qLXH3u8aAADweYQRAABgVJv6jBQUFOhFXS9SBg0aJE8//bSkp6frx6mpqbJx40aX/+fBBx+UV155xZ1lBgDAb8TPXu2116rIGyW2DyNqOE9eXp7uRat61S5evFjGjBkjX375pQ4myuTJk2XevHnO/8fOHXkAAICXw8jo0aNdHj/33HO6pWTz5s3OMKLCR1RUlBuKBgAAAsF59xlRs8stXbpUamtrZejQoc71b775pnTv3l0GDx4s2dnZZ538pa6uTt92uPECAAA8T80bohoQfv3rXzvXffbZZ3qelA0bNoi3tHmekbKyMh0+Tp48qWdgW7FihQwcOFA/N378eOndu7ee8GX79u0ya9Ys2bVrlyxfvrzV/eXm5srcuXMvrBYAfF9ORAvrqsWOEhcnNltXlll21n4E/nq9H/49b8jrr78uGRkZMnLkSOnfv7/cc889Mn36dBk+fLjvhhFV0NLSUqmurpZ33nlHMjMzdadVFUimTJni3C4xMVGio6N1ZXbv3i19+/ZtcX+q9SQrK8v5WLWMqEljAACA59122226v+eECRPk6quvlosuukg3FHhTm8OIarrp16+f/n3IkCHy+eefy0svvSSvvvpqs21TUlL0z/Ly8lbDSEhIiF4AAIAZzz//vO5esWzZMikpKfH69/IFzzOipr9V/T5aolpQFNVCAgAAfNPu3btl//79+jvdMX2Hz7aMqEsqak6RuLg4OXbsmCxZskSKiorkww8/1BVRj1VzT7du3XSfkZkzZ8qwYcMkKSnJczUAAAAXdF+dn/3sZ3LnnXfqrhgPPPCA7h/ao0cP8ckwcvjwYbn33nv1LZIjIiJ0yFBB5JZbbpHKykpZv369LFiwQI+wUf0+xo0bJ3PmzPFc6QEAwAV58skndT/Ql19+WQ9MWbNmjUyaNElWrVolPhlGXnvttVafU+Gj6eyrAAAEOl8eJVVUVKQbET755BMJDw/X6/74xz9KcnKynkds6tSpvtmBFQAA2ENqaqrU19e7rIuPj9ctJd7EjfIAAIBRhBEAAGAUYQQAABhFGAEAAEYRRgAAgFGEEQAAYBRhBAAAGEUYAQAARhFGAACAUczACgCAJ+VEeO/9zfHuzKnuQssIAAAwijACAECAeuONN6Rbt25SV1fnsj4jI0Puuecer5WDyzRAoDQNu7H5NnFxosvjsswyt+0bgPfccccd8otf/ELee+89/bty+PBhWb16tXz00UdeKwctIwAABKiwsDAZP368LFq0yLnuT3/6k8TFxek7+noLYQQAgAA2efJk3QryzTff6MeFhYUyceJECQoK8loZuEwDAEAAu/LKKyU5OVn3Hxk5cqTs3LlTX6bxJsIIAAAB7oEHHpAFCxbo1pERI0ZIbGysV1+fyzQAAAS48ePHy759++T3v/+9TJo0yeuvTxgBACDARUREyLhx46Rz5856WK+3cZkGAABP8pNZUb/55huZMGGChISEeP21CSMAAASw7777ToqKivSycOFCI2UgjAAAEOCjab777jv5zW9+I/379zdSBsIIAKf42c2H81XkjfL7d8iu9QLcoaKiQkyjAysAADCKMAIAAIwijAAAAKMIIwAAwCjCCAAAMIowAgAAjCKMAAAAo5hnBAAA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mdx+++3Srl07ufvuu939UgAAwAbcfplm3759OngcPXpULrnkErnhhhtk8+bN+ncAAACPh5GlS5e6e5cAAMDGuDcNAAAwijACAACMIowAAACjuIPdeYqfvbrZuoq8Uc3WJS5ObLauLLPsfF8WAGBHORHN1yXEuWXX/vA9RMsIAAAwijACAACMIowAAACjCCMAAMAowggAADCKMAIAAIwijAAAAKMIIwAAwCjCCAAAMIoZWAEA8MGZUwMJLSMAAMAowggAADCKMAIAAIwijAAAAKMIIwAAwCjCCAAAMIowAgAAjCKMAAAAowgjAADAKGZgdSdm4gMAmJTjnzPC0jICAACMIowAAACjCCMAAMAowggAADCKMAIAAIwijAAAAKMIIwAAwCjCCAAAMIowAgAAjGIGVgAA/FD87NXN1lWEil+iZQQAABhFGAEAAEYRRgAAgFGEEQAAYBRhBAAA2DOM5OfnS3x8vISGhkpKSops3brVUy8FAAD8mEfCyJ///GfJysqSZ555Rr744gtJTk6WtLQ0OXz4sCdeDgAA+DGPhJEXXnhBJk+eLPfdd58MHDhQXnnlFenUqZO8/vrrnng5AADgx9w+6dmpU6ekpKREsrOzneuCg4NlxIgRUlxc3Gz7uro6vThUV1frnzU1NeIJDXUnmq2rCbKarTv9/WnXbZqU53z303Rfvraflvblrv20tC937edc9uVr+7HTe80x879j1nRfvraflvbF50M89l67g2OfltW8DGdludk333yjSmF99tlnLusfe+wx69prr222/TPPPKO3Z+E94BzgHOAc4BzgHBC/fw8qKyvbnB2MTwevWlBU/xKHhoYG+fbbb6Vbt24SFBTktrQWGxsrlZWVEh4eLnZEHe2DY2kPHEf74FieG9UicuzYMYmJiZG2cnsY6d69u7Rr104OHTrksl49joqKarZ9SEiIXhrr2rWreIIKInYNIw7U0T44lvbAcbQPjuXZRUREiE90YO3YsaMMGTJENmzY4NLaoR4PHTrU3S8HAAD8nEcu06jLLpmZmXL11VfLtddeKwsWLJDa2lo9ugYAAMDjYeTOO++UI0eOyNNPPy0HDx6UK664QtauXSs9e/YUE9RlIDXnSdPLQXZCHe2DY2kPHEf74Fh6XpDqxeqF1wEAAGgR96YBAABGEUYAAIBRhBEAAGAUYQQAABhl+zCSn58v8fHxEhoaKikpKbJ161bxVTk5OXrW2cbLgAEDnM+fPHlSpk2bpmen7dy5s4wbN67Z5HJ79+6VUaNG6RsT9ujRQx577DH54YcfXLYpKiqSq666SvcQ79evnxQWFnqsTps2bZLRo0frGflUfVauXOnyvOo/rUZdRUdHS1hYmL6H0ddff+2yjZqRd8KECXrCITUh3v333y/Hjx932Wb79u1y44036uOsZtudP39+s7IsW7ZMv59qm8TERFmzZo1X6jhx4sRmx/XWW2/1qzrm5ubKNddcI126dNHnVUZGhuzatctlG2+en574XJ9LHVNTU5sdy4ceeshv6qgUFBRIUlKScwIvNf/TBx98YJvjeC51tMNxbCovL0/XY8aMGf55LC0bW7p0qdWxY0fr9ddft3bu3GlNnjzZ6tq1q3Xo0CHLF6n79AwaNMg6cOCAczly5Ijz+YceesiKjY21NmzYYG3bts267rrrrP/5n/9xPv/DDz9YgwcPtkaMGGF9+eWX1po1a6zu3btb2dnZzm3+/e9/W506dbKysrKsr776yvrd735ntWvXzlq7dq1H6qTK8OSTT1rLly/X9yxYsWKFy/N5eXlWRESEtXLlSuvvf/+79ZOf/MRKSEiwvv/+e+c2t956q5WcnGxt3rzZ+utf/2r169fPuvvuu53PV1dXWz179rQmTJhg7dixw3rrrbessLAw69VXX3Vu87e//U3Xc/78+brec+bMsTp06GCVlZV5vI6ZmZm6Do2P67fffuuyja/XMS0tzVq0aJF+7dLSUuu2226z4uLirOPHj3v9/PTU5/pc6vjjH/9Yv17jY6mOjb/UUXnvvfes1atXW//617+sXbt2WU888YQ+T1S97XAcz6WOdjiOjW3dutWKj4+3kpKSrEceecS53p+Opa3DiLox37Rp05yPT58+bcXExFi5ubmWr4YR9YXUkqqqKv1hWrZsmXPdP/7xD/3lV1xcrB+rEyk4ONg6ePCgc5uCggIrPDzcqqur048ff/xxHXgau/POO/UfYk9r+kXd0NBgRUVFWb/97W9d6hkSEqK/bBV18qv/7/PPP3du88EHH1hBQUH6pozKwoULrYsvvthZR2XWrFlW//79nY9/+tOfWqNGjXIpT0pKivXggw96tI6OMDJmzJhW/x9/q6Ny+PBhXeaNGzd6/fz01ue6aR0dX2KN/9g3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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "lengths = [[len(step[i]) for step in in22] for i in (1,2,3)]\n", "plt.hist(lengths, bins=25, label=list('xyz'))\n", "plt.legend();" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Answer**: The histogram above breaks out the lengths of the sides of the cuboids by x, y, and z dimensions. It looks like a roughly normal distribution (although noisy) in each dimension with mean around 20,000, except that we can see a spike just above length 0 for the 20 small cuboids that are used in Part 1 (plus a few other cuboids that happen to have small ranges in one of the `x` or `z` dimensions, but not `y`).\n", "\n", "**Question**: Can I visualize the actual cuboids?" ] }, { "cell_type": "code", "execution_count": 112, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(6, 6)) # Make it square\n", "for (on, xs, ys, zs) in in22:\n", " plt.plot(*box(xs, ys), '-')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Answer**: The plot above gives a 2D projection into the XY plane. (You could also project to XZ or YZ planes, but I don't think that would be very different. To do 3D you'd need animation. A 3D VR headset would help.) \n", "\n", "We can also look more closely at a sample of every tenth cuboid, this time in the YZ plane:" ] }, { "cell_type": "code", "execution_count": 113, "metadata": {}, "outputs": [ { "data": { "image/png": "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jYto0/es7/1UX6BA0rHZJDuvngkm1eW0e8Vrd5azSps0zK64OTn8KsE6zTwzuiavuAST4uJi6d69u3zwwQeybds26dixY+i5Dz/8UAYPHiybNm2Sxo0bywMPPCCjRo2KeP2SJUvk0UcflS+++ELOPvtsefzxx+Xqq6+O+Iv7sccek2effVaOHj0qPXv2lDlz5piyQd99951Z9+uvv276MVx//fUya9YsqVOnTjwOAapo2AMPyHOD+5vlQfMWirMafUxq0vm1OjxFRaH28uruWziumQEACQ4mGjRatGhhgkm4Y8eOyZVXXil9+vSRuXPnyo4dO0zVdr169eTee+81ZdatWye33HKLTJ48WX7xi1/ISy+9JNddd51s3bpV2rdvb8pMmTJFnnzySXnxxRelTZs2JsT07dtXdu3aJVknTh79+vWTAwcOyLJly8xfqf379zfb0PXBOky/i0BJK7jWJDirUZvgF584T/Qr0ddGO5jY/P4a7xtgaaWDaKTgxASHNVGb1wJxCyb//Oc/5Z133pFXX33VLIdbtGiR+etR+xfoF/35558v27dvlxkzZoSCidZqXHXVVTJy5Ehzf+LEiSZcPPXUUybMaG3JzJkzZezYsXLttdeaMn/961+ladOm8tprr8nNN98sH3/8sSxdutTUynTt2tWUmT17tql10as9amgCgHRVEDbDcoe1OxO6L0BMr5Vz6NAhGThwoPztb3+TnJyTLy29fv16ufTSSyPa2LWmY8+ePfL999+HymiNSjgto4+rvXv3ysGDByPK5OXlmaajYBn9qbUwwVCitLw26WzYsKHC5iet0Qm/AQBOrVteruTUctQa0lfMaky0JuOuu+6S+++/3wQC7R9SlgYKbXoJpzUdwefq169vfgYfCy+jjwfLhb+uojJNmjSJeD4jI0MaNGgQKlOWNh2NHz++Bu8cAJJLI2eG7Oh5vlk2gaKWM9XrOhjxgpqqdqR96KGHzH+4ym67d+82TSU//PCDjBkzRpKR7nd+fn7olo6jRgCkB/3ebuxymltuhkNyHbW7EUoQ1xqTBx980NSEVObMM8+UlStXmiaUzDIT5GjtiXZE1Y6qzZo1M8094YL39bngz/LKhD8ffKx58+YRZYKjf7TM4cOHI9bh9XrNSJ3g68vS/S677wAAwGLBRIf06u1UdJTMpEmTQvf3799v+oa88sor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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(6, 6))\n", "for (on, xs, ys, zs) in in22[::10]:\n", " plt.plot(*box(ys, zs), '-')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Question**: What's a good strategy for counting cubes?\n", "\n", "**Answer**: You can see in the plots above that when two rectangles intersect, they can leave non-rectangular pieces (and in 3 dimensions, non-cuboid pieces). That's the difficulty. The key is to break these pieces up into smaller pieces that are all cuboids. The algorithm will be:\n", "\n", "1. Find all the **split points** in the first dimension–values of `x` that start or end a cuboid. Create a list of **bins**, one covering the range between each pair of adjacent split points.\n", "\n", "2. Assign each step to the bin(s) it overlaps. For example (in 2 dimensions), suppose that step 1 is a 7x4 \"on\" step and step 2 is a 6x4 \"off\" step, and that they span the locations shown below left. When we split on `x` we get the three bins shown below right (all 1s in the left bin, all 2s in the right bin, and both 1 and 2 in the middle bin):\n", "\n", " 1111111 1111 111\n", " 1111111 1111 111\n", " 1111222222 1111 222 222\n", " 1111222222 1111 222 222\n", " 222222 222 222\n", " 222222 222 222\n", "\n", "\n", "3. Recurse if there are more dimensions to split on. In the example, we need to split on `y`. The two outside bins aren't split (because they only have one step), but the middle bin is split into 3 bins. Notice that each bin is a rectangle (and in 3 dimensions, each bin would be a cuboid). \n", "\n", " 111\n", " 1111 111\n", " 1111\n", " 1111 222 222\n", " 1111 222 222\n", " 222\n", " 222 222\n", " 222\n", " \n", "\n", "4. For each bin that is \"on\", multiply their side lengths to get their volume, and add up the volumes to get the total number of \"on\" cubes. In the example, the \"on\" bins (with step 1) are one 4x4 cuboid and one 3x2 cuboid, giving a total of 22 cubes.\n", "\n", "For the real input data, I would probably end up with a million or so bins. Adding up the volumes of a million bins will be faster than enumerating a quadrillion cubes.\n", " \n", "Below is the implementation. For the `Bin` data type, I'll have a field for the dimension we are splitting on; one for the range of values covered in that dimension by the bin; and one for a list of `kids`: At first it holds a list of all the steps that at least partially overlap the bin, but then (for the `x` and `y` dimensions but not `z`) that list of steps will be replaced by a list of bins." ] }, { "cell_type": "code", "execution_count": 114, "metadata": {}, "outputs": [], "source": [ "@dataclass\n", "class Bin:\n", " dim: int # 1, 2, or 3 for x, y, or z dimension\n", " range: range # locations that are covered by this bin, on the given dimension\n", " kids: list[Step] | list['Bin'] # Steps that overlap this bin (may be converted to bins)\n", "\n", "def bins_from_steps(steps, dims=(1, 2, 3)) -> list[Bin]:\n", " \"\"\"Convert the steps to a list of bins.\"\"\"\n", " # (1) Find all the split points in the first dimension. Create a list of bins.\n", " dim, *more_dims = dims\n", " splits = sorted(set(flatten((step[dim].start, step[dim].stop) for step in steps)))\n", " bins = [Bin(dim, range(*pair), []) for pair in pairs(splits)]\n", " # (2) Assign each step to the bin(s) it overlaps.\n", " for bin in bins:\n", " bin.kids = [step for step in steps if overlaps(bin.range, step[dim])]\n", " # (3) Recurse if there are more dimensions\n", " if more_dims:\n", " for bin in bins:\n", " bin.kids = bins_from_steps(bin.kids, more_dims)\n", " return bins\n", "\n", "def overlaps(A: range, B: range) -> bool:\n", " \"\"\"Do these ranges overlap?\"\"\"\n", " return (B.start <= A.start < B.stop) or (A.start <= B.start < A.stop)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here is the example, showing the three bins at the `x` level, and five at the `y` level:" ] }, { "cell_type": "code", "execution_count": 115, "metadata": {}, "outputs": [], "source": [ "steps2 = [('on', range(0, 7), range(0, 4)), \n", " ('off', range(4, 9), range(2, 6))]\n", "\n", "assert (bins_from_steps(steps2, (1, 2)) == \n", " [Bin(1, range(0, 4), \n", " [Bin(2, range(0, 4), [('on', range(0, 7), range(0, 4))])]), \n", " Bin(1, range(4, 7), \n", " [Bin(2, range(0, 2), [('on', range(0, 7), range(0, 4))]), \n", " Bin(2, range(2, 4), [('on', range(0, 7), range(0, 4)), \n", " ('off', range(4, 9), range(2, 6))]), \n", " Bin(2, range(4, 6), [('off', range(4, 9), range(2, 6))])]), \n", " Bin(1, range(7, 9), \n", " [Bin(2, range(2, 6), [('off', range(4, 9), range(2, 6))])])])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The test passes! The only thing that remains is to count up the number of cubes in the \"on\" cuboids. I'll define `count_cubes2` so that it can handle Part 1 as well as Part 2:" ] }, { "cell_type": "code", "execution_count": 116, "metadata": {}, "outputs": [], "source": [ "def count_cubes2(steps, region=None) -> int:\n", " \"\"\"Follow `steps` to turn on or off cubes, and count 'on' cubes.\"\"\"\n", " if region:\n", " steps = [s for s in steps if s[1].start >= region.start and s[1].stop <= region.stop]\n", " return sum(count_cubes_in_bin(bin) for bin in bins_from_steps(steps))\n", "\n", "def count_cubes_in_bin(bin) -> int:\n", " \"\"\"How many \"on\" cubes are in this bin? Recurse down to `dim == 3`, keeping track of \n", " the lengths of all three sides, and return the product for bins that are \"on\".\"\"\"\n", " N = len(bin.range)\n", " if bin.dim < 3:\n", " return N * sum(map(count_cubes_in_bin, bin.kids))\n", " elif bin.kids and (bin.kids[-1][0] == 'on'):\n", " return N\n", " else:\n", " return 0" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's go ahead and solve the complete puzzle without any more tests:" ] }, { "cell_type": "code", "execution_count": 117, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 22.1: 4.9 msec, correct answer: 533863 " ] }, "execution_count": 117, "metadata": {}, "output_type": "execute_result" } ], "source": [ "answer(22.1, 533863, lambda: count_cubes2(in22, region=cover(-50, 50)))" ] }, { "cell_type": "code", "execution_count": 118, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 22.2: 1,764.6 msec, correct answer: 1261885414840992" ] }, "execution_count": 118, "metadata": {}, "output_type": "execute_result" } ], "source": [ "answer(22.2, 1261885414840992, lambda: count_cubes2(in22))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We got the right answers. Part 1 runs 50 times faster; Part 2 takes over 5 seconds. One idea to make it faster: I compare every step to every bin. This could probably be speeded up with a binary search. I chose not to do that because binary searches are notorious for off-by-one errors; doubly so when searching over ranges of numbers, not a single number." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 23](https://adventofcode.com/2021/day/23): Amphipod\n", "\n", "- **Input**: The input is a diagram of a grid: " ] }, { "cell_type": "code", "execution_count": 119, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 5 strs of size 11 to 13:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "#############\n", "#...........#\n", "###D#C#A#B###\n", " #D#C#B#A#\n", " #########\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 5 strs of size 11 to 13:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "#############\n", "#...........#\n", "###D#C#A#B###\n", " #D#C#B#A#\n", " #########\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "in23 = Grid(parse(23))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 1**: What is the least energy required to organize the amphipods?\n", "\n", "This should be an application of A-star search, but it is not a simple grid search, because it involves moving **multiple** actors, not just one. Here's how I think about it:\n", "- A **state** is not just a single location. It will be a dict of {location: amphipod} pairs for all the amphipods. But a state must be hashable, so we'll use `Hashabledict`.\n", "- The initial state can be read off my problem description.\n", "- The goal state is when all the amphipods are in their correct side rooms.\n", "- An **action** is a `Move`, which has a star, an end, and an actor.\n", "- The **action cost** of an action is the energy cost for the actor times the number of steps in the move.\n", "- The **result** of a move is to move the actor from the start location to the end location.\n", "- The legal **actions** from a state is a bit complicated:\n", " - An amphipod can move from a side room to any space in the hallway except a doorway immediately outside a room.\n", " - An amphipod can move from the hallway to its designated side room, but only if there are no amphipods of a different color there. It must move to the deepest spot in the room.\n", "- All this can be encapsulated in a subclass of `SearchProblem`.\n", "\n", "I started with the following code, but **did not finish**." ] }, { "cell_type": "code", "execution_count": 120, "metadata": {}, "outputs": [], "source": [ "A, B, C, D = amphipods = 'ABCD' # The four kinds of creature\n", "hall_row = 1 # Row where the hall spaces are\n", "side_rows = {2, 3} # Rows every Amphipod aspires to\n", "goal_cols = {A: 3, B: 5, C: 7, D: 9} # Column each Amphipod type aspires to\n", "goal_state = {L: (c, r) for r in side_rows\n", " for (L, c) in [(A, 3), (B, 5), (C, 7), (D, 9)]}\n", "\n", "side_rooms = set(goal_state.values()) # All the spaces off of the hallway\n", "hallway = {(c, hall_row) for c in range(1, 12)} # Hallway spaces\n", "hall_stops = {(c, r) for (c, r) in hallway if c not in goal_cols.values()} # Hallway spaces where you're allowed to stop\n", "\n", "class Hashabledict(dict):\n", " \"\"\"A hashable dict; can be used in sets or as a key in other dicts.\"\"\"\n", " def __hash__(self): return hash(tuple(sorted(self.items())))\n", " \n", "@dataclass\n", "class Move:\n", " start: Point\n", " end: Point\n", " actor: Char \n", " \n", "class AmphipodProblem(SearchProblem):\n", " \"\"\"Problem of finding a least-cost Amphipod rearrangement.\"\"\"\n", " def __init__(self, grid, goal):\n", " self.hallway = {(c, hall_row) for c in range(1, 12)} # Hallway spaces\n", "\n", " \n", " def __init__(self, initial, goal):\n", " self.initial, self.goal = initial, goal\n", " self.hallway = extract\n", " \n", " def result(self, state, move) -> Hashabledict:\n", " \"\"\"Build a new state with this move made.\"\"\"\n", " copy = Hashabledict(state)\n", " del copy[move.start] \n", " copy[move.end] = move.actor\n", " return copy\n", " \n", " def action_cost(self, s1, move, s2) -> int: \n", " return manhatten_distance(move.start, move.end) * 10 ** amphipods.index[move.actor]\n", " \n", " def h(self, node) -> int: \n", " \"\"\"The number of Amphipods not in their goal location, times their energy cost.\"\"\"\n", " return sum(10 ** amphipods.index[amphi] \n", " for loc, amphi in node.state.items() if self.goal[loc] != amphi)\n", " \n", " def actions(self, loc) -> Iterable[Move]: \n", " \"\"\"All the moves that can be made from a state.\"\"\"\n", " for loc in state:\n", " # An amphipod can move from a side room to the hallway (except a doorway()\n", " if loc in self.side_rooms and clear_path(loc, (X_(loc), hall_row), state):\n", " for hall in self.hall_stops:\n", " if clear_path((X_(loc), hall_row), hall, state):\n", " yield Move(loc, hall, state[loc])\n", " # If you're in the hallway and you have a clear path to your doorway ... \n", " goal_col = goal_cols[state[loc]]\n", " if loc in hallway and clear(loc, (goal_col, hall_row), state):\n", " # ... then you can move to the top empty space in your side room if no foreign occupants\n", " occupants = {L for (x, y), L in state.items() if x == goal_col}\n", " if not occupants or occupants == {state[loc]}:\n", " top_row = max(y for y in side_rows if (goal_col, y) not in state)\n", " yield Move(loc, (goal_col, top_row), state[loc])\n", " \n", "def clear(loc, dest, state):\n", " \"\"\"Is the path from `loc` to `dest` clear of Amphipods in state?\"\"\"\n", " Δx = sign(X_(dest) - X_(loc))\n", " Δy = sign(Y_(dest) - Y_(loc))\n", " return all((X_(loc) + i * Δx, Y_(loc) + i * Δy) not in state\n", " for i in range(1, distance(loc, dest) + 1))\n", "\n", "def extract_state(grid, kinds) -> dict:\n", " \"\"\"The parts of the grid of a certain kind.\"\"\"\n", " return Hashabledict({loc: grid[loc] for loc in grid if grid[loc] in kinds})" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 24](https://adventofcode.com/2021/day/24): Arithmetic Logic Unit\n", "\n", "- **Input**: The input is a sequence of assembly language instructions for the submarine's ALU.\n", "\n", "I'll parse each line into a tuple of atoms:" ] }, { "cell_type": "code", "execution_count": 121, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 252 strs of size 5 to 9:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "inp w\n", "mul x 0\n", "add x z\n", "mod x 26\n", "div z 1\n", "add x 12\n", "eql x w\n", "eql x 0\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 252 tuples of size 2 to 3:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "('inp', 'w')\n", "('mul', 'x', 0)\n", "('add', 'x', 'z')\n", "('mod', 'x', 26)\n", "('div', 'z', 1)\n", "('add', 'x', 12)\n", "('eql', 'x', 'w')\n", "('eql', 'x', 0)\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "in24 = program = parse(24, atoms)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here are the instructions for how to interpret each instruction:\n", "\n", "- `inp a` - Read an input value and write it to variable a.\n", "- `add a b` - Add the value of a to the value of b, then store the result in variable a.\n", "- `mul a b` - Multiply the value of a by the value of b, then store the result in variable a.\n", "- `div a b` - Divide the value of a by the value of b, truncate the result to an integer, then store the result in variable a. (Here, \"truncate\" means to round the value toward zero.)\n", "- `mod a b` - Divide the value of a by the value of b, then store the remainder in variable a. (This is also called the modulo operation.)\n", "- `eql a b` - If the value of a and b are equal, then store the value 1 in variable a. Otherwise, store the value 0 in variable a.\n", "\n", "Note that `b` can be either a variable name or an integer constant. Note there is no branch instruction. Inputs read by the `inp` instruction are one-digit numbers. There are 14 `inp` instructions, and if you feed the program a valid 14-digit model number, it will leave 0 in variable `z`.\n", "\n", "- **Part 1**: To enable as many submarine features as possible, find the largest valid fourteen-digit model number that contains no 0 digits. **What is the largest model number accepted by MONAD?**\n", "\n", "Obviously we can't try all 14-digit numbers, so we'll have to somehow understand what the program is doing to find the right model number. But first let's implement the ALU:" ] }, { "cell_type": "code", "execution_count": 122, "metadata": {}, "outputs": [], "source": [ "def alu(program, inputstr) -> dict[str, int]:\n", " \"\"\"Run a program with an input string on the submarine's ALU,\n", " and return a dict of the program variables (and {'error': op} if appropriate).\"\"\"\n", " inputs = iter(inputstr)\n", " M = dict(w=0, x=0, y=0, z=0) # Memory\n", " for op, a, *rest in program:\n", " b = M.get(rest[0], rest[0]) if rest else None\n", " if op == 'inp': \n", " M[a] = int(next(inputs))\n", " elif op == 'add': \n", " M[a] += b\n", " elif op == 'mul': \n", " M[a] *= b\n", " elif op == 'div': \n", " if b == 0: return {'error': 1, **M}\n", " M[a] //= b\n", " elif op == 'mod': \n", " if M[a] < 0 or b <= 0: return {'error': 2, **M}\n", " M[a] %= b\n", " elif op == 'eql': \n", " M[a] = int(M[a] == b)\n", " return M\n", " " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can run a program:" ] }, { "cell_type": "code", "execution_count": 123, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'w': 4, 'x': 1, 'y': 19, 'z': 2264488401}" ] }, "execution_count": 123, "metadata": {}, "output_type": "execute_result" } ], "source": [ "alu(program, '12345678901234')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's figure out where the input instructions are:" ] }, { "cell_type": "code", "execution_count": 124, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{0, 18, 36, 54, 72, 90, 108, 126, 144, 162, 180, 198, 216, 234}" ] }, "execution_count": 124, "metadata": {}, "output_type": "execute_result" } ], "source": [ "{i for i, ins in enumerate(program) if ins[0] == 'inp'}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "They're every 18 instructions. Let's look at the program divided into 18-instruction segments:" ] }, { "cell_type": "code", "execution_count": 125, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " 0: inp w | 18: inp w | 36: inp w | 54: inp w | 72: inp w | 90: inp w | 108: inp w | 126: inp w \n", " 1: mul x 0 | 19: mul x 0 | 37: mul x 0 | 55: mul x 0 | 73: mul x 0 | 91: mul x 0 | 109: mul x 0 | 127: mul x 0 \n", " 2: add x z | 20: add x z | 38: add x z | 56: add x z | 74: add x z | 92: add x z | 110: add x z | 128: add x z \n", " 3: mod x 26 | 21: mod x 26 | 39: mod x 26 | 57: mod x 26 | 75: mod x 26 | 93: mod x 26 | 111: mod x 26 | 129: mod x 26 \n", " 4: div z 1 | 22: div z 1 | 40: div z 1 | 58: div z 26 | 76: div z 1 | 94: div z 26 | 112: div z 1 | 130: div z 1 \n", " 5: add x 12 | 23: add x 10 | 41: add x 13 | 59: add x -11| 77: add x 13 | 95: add x -1 | 113: add x 10 | 131: add x 11 \n", " 6: eql x w | 24: eql x w | 42: eql x w | 60: eql x w | 78: eql x w | 96: eql x w | 114: eql x w | 132: eql x w \n", " 7: eql x 0 | 25: eql x 0 | 43: eql x 0 | 61: eql x 0 | 79: eql x 0 | 97: eql x 0 | 115: eql x 0 | 133: eql x 0 \n", " 8: mul y 0 | 26: mul y 0 | 44: mul y 0 | 62: mul y 0 | 80: mul y 0 | 98: mul y 0 | 116: mul y 0 | 134: mul y 0 \n", " 9: add y 25 | 27: add y 25 | 45: add y 25 | 63: add y 25 | 81: add y 25 | 99: add y 25 | 117: add y 25 | 135: add y 25 \n", " 10: mul y x | 28: mul y x | 46: mul y x | 64: mul y x | 82: mul y x | 100: mul y x | 118: mul y x | 136: mul y x \n", " 11: add y 1 | 29: add y 1 | 47: add y 1 | 65: add y 1 | 83: add y 1 | 101: add y 1 | 119: add y 1 | 137: add y 1 \n", " 12: mul z y | 30: mul z y | 48: mul z y | 66: mul z y | 84: mul z y | 102: mul z y | 120: mul z y | 138: mul z y \n", " 13: mul y 0 | 31: mul y 0 | 49: mul y 0 | 67: mul y 0 | 85: mul y 0 | 103: mul y 0 | 121: mul y 0 | 139: mul y 0 \n", " 14: add y w | 32: add y w | 50: add y w | 68: add y w | 86: add y w | 104: add y w | 122: add y w | 140: add y w \n", " 15: add y 6 | 33: add y 6 | 51: add y 3 | 69: add y 11 | 87: add y 9 | 105: add y 3 | 123: add y 13 | 141: add y 6 \n", " 16: mul y x | 34: mul y x | 52: mul y x | 70: mul y x | 88: mul y x | 106: mul y x | 124: mul y x | 142: mul y x \n", " 17: add z y | 35: add z y | 53: add z y | 71: add z y | 89: add z y | 107: add z y | 125: add z y | 143: add z y \n" ] } ], "source": [ "def instr(i) -> str: return f'{i:3d}: ' + ' '.join(map(str, program[i])).ljust(9)\n", "\n", "for i in range(18):\n", " print(\"| \".join(instr(i + 18 * j) for j in range(8)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Each column is similar, but there are different constants for instructions 4–5 and 15 in each column:" ] }, { "cell_type": "code", "execution_count": 126, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{0: {'inp w'},\n", " 1: {'mul x 0'},\n", " 2: {'add x z'},\n", " 3: {'mod x 26'},\n", " 4: {'div z 1', 'div z 26'},\n", " 5: {'add x -1',\n", " 'add x -11',\n", " 'add x -16',\n", " 'add x -5',\n", " 'add x -7',\n", " 'add x 0',\n", " 'add x 10',\n", " 'add x 11',\n", " 'add x 12',\n", " 'add x 13'},\n", " 6: {'eql x w'},\n", " 7: {'eql x 0'},\n", " 8: {'mul y 0'},\n", " 9: {'add y 25'},\n", " 10: {'mul y x'},\n", " 11: {'add y 1'},\n", " 12: {'mul z y'},\n", " 13: {'mul y 0'},\n", " 14: {'add y w'},\n", " 15: {'add y 10',\n", " 'add y 11',\n", " 'add y 12',\n", " 'add y 13',\n", " 'add y 14',\n", " 'add y 15',\n", " 'add y 3',\n", " 'add y 6',\n", " 'add y 9'},\n", " 16: {'mul y x'},\n", " 17: {'add z y'}}" ] }, "execution_count": 126, "metadata": {}, "output_type": "execute_result" } ], "source": [ "{i: {instr(i + 18 * j)[5:].strip() for j in range(14)} for i in range(18)}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's try every possible digit as the first input, and see what the program computes right up to the point where it is ready to read the second digit:" ] }, { "cell_type": "code", "execution_count": 127, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'0': {'w': 0, 'x': 1, 'y': 6, 'z': 6},\n", " '1': {'w': 1, 'x': 1, 'y': 7, 'z': 7},\n", " '2': {'w': 2, 'x': 1, 'y': 8, 'z': 8},\n", " '3': {'w': 3, 'x': 1, 'y': 9, 'z': 9},\n", " '4': {'w': 4, 'x': 1, 'y': 10, 'z': 10},\n", " '5': {'w': 5, 'x': 1, 'y': 11, 'z': 11},\n", " '6': {'w': 6, 'x': 1, 'y': 12, 'z': 12},\n", " '7': {'w': 7, 'x': 1, 'y': 13, 'z': 13},\n", " '8': {'w': 8, 'x': 1, 'y': 14, 'z': 14},\n", " '9': {'w': 9, 'x': 1, 'y': 15, 'z': 15}}" ] }, "execution_count": 127, "metadata": {}, "output_type": "execute_result" } ], "source": [ "{d: alu(in24[:18], d) for d in '0123456789'}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "It looks like after processing one digit, *d*, we have:\n", "- w = *d*\n", "- x = 1\n", "- y = z = *d* + 6\n", " \n", "Let's try it for every two-digit input:" ] }, { "cell_type": "code", "execution_count": 128, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'00': {'w': 0, 'x': 1, 'y': 6, 'z': 162},\n", " '01': {'w': 1, 'x': 1, 'y': 7, 'z': 163},\n", " '02': {'w': 2, 'x': 1, 'y': 8, 'z': 164},\n", " '03': {'w': 3, 'x': 1, 'y': 9, 'z': 165},\n", " '04': {'w': 4, 'x': 1, 'y': 10, 'z': 166},\n", " '05': {'w': 5, 'x': 1, 'y': 11, 'z': 167},\n", " '06': {'w': 6, 'x': 1, 'y': 12, 'z': 168},\n", " '07': {'w': 7, 'x': 1, 'y': 13, 'z': 169},\n", " '08': {'w': 8, 'x': 1, 'y': 14, 'z': 170},\n", " '09': {'w': 9, 'x': 1, 'y': 15, 'z': 171},\n", " '10': {'w': 0, 'x': 1, 'y': 6, 'z': 188},\n", " '11': {'w': 1, 'x': 1, 'y': 7, 'z': 189},\n", " '12': {'w': 2, 'x': 1, 'y': 8, 'z': 190},\n", " '13': {'w': 3, 'x': 1, 'y': 9, 'z': 191},\n", " '14': {'w': 4, 'x': 1, 'y': 10, 'z': 192},\n", " '15': {'w': 5, 'x': 1, 'y': 11, 'z': 193},\n", " '16': {'w': 6, 'x': 1, 'y': 12, 'z': 194},\n", " '17': {'w': 7, 'x': 1, 'y': 13, 'z': 195},\n", " '18': {'w': 8, 'x': 1, 'y': 14, 'z': 196},\n", " '19': {'w': 9, 'x': 1, 'y': 15, 'z': 197},\n", " '20': {'w': 0, 'x': 1, 'y': 6, 'z': 214},\n", " '21': {'w': 1, 'x': 1, 'y': 7, 'z': 215},\n", " '22': {'w': 2, 'x': 1, 'y': 8, 'z': 216},\n", " '23': {'w': 3, 'x': 1, 'y': 9, 'z': 217},\n", " '24': {'w': 4, 'x': 1, 'y': 10, 'z': 218},\n", " '25': {'w': 5, 'x': 1, 'y': 11, 'z': 219},\n", " '26': {'w': 6, 'x': 1, 'y': 12, 'z': 220},\n", " '27': {'w': 7, 'x': 1, 'y': 13, 'z': 221},\n", " '28': {'w': 8, 'x': 1, 'y': 14, 'z': 222},\n", " '29': {'w': 9, 'x': 1, 'y': 15, 'z': 223},\n", " '30': {'w': 0, 'x': 1, 'y': 6, 'z': 240},\n", " '31': {'w': 1, 'x': 1, 'y': 7, 'z': 241},\n", " '32': {'w': 2, 'x': 1, 'y': 8, 'z': 242},\n", " '33': {'w': 3, 'x': 1, 'y': 9, 'z': 243},\n", " '34': {'w': 4, 'x': 1, 'y': 10, 'z': 244},\n", " '35': {'w': 5, 'x': 1, 'y': 11, 'z': 245},\n", " '36': {'w': 6, 'x': 1, 'y': 12, 'z': 246},\n", " '37': {'w': 7, 'x': 1, 'y': 13, 'z': 247},\n", " '38': {'w': 8, 'x': 1, 'y': 14, 'z': 248},\n", " '39': {'w': 9, 'x': 1, 'y': 15, 'z': 249},\n", " '40': {'w': 0, 'x': 1, 'y': 6, 'z': 266},\n", " '41': {'w': 1, 'x': 1, 'y': 7, 'z': 267},\n", " '42': {'w': 2, 'x': 1, 'y': 8, 'z': 268},\n", " '43': {'w': 3, 'x': 1, 'y': 9, 'z': 269},\n", " '44': {'w': 4, 'x': 1, 'y': 10, 'z': 270},\n", " '45': {'w': 5, 'x': 1, 'y': 11, 'z': 271},\n", " '46': {'w': 6, 'x': 1, 'y': 12, 'z': 272},\n", " '47': {'w': 7, 'x': 1, 'y': 13, 'z': 273},\n", " '48': {'w': 8, 'x': 1, 'y': 14, 'z': 274},\n", " '49': {'w': 9, 'x': 1, 'y': 15, 'z': 275},\n", " '50': {'w': 0, 'x': 1, 'y': 6, 'z': 292},\n", " '51': {'w': 1, 'x': 1, 'y': 7, 'z': 293},\n", " '52': {'w': 2, 'x': 1, 'y': 8, 'z': 294},\n", " '53': {'w': 3, 'x': 1, 'y': 9, 'z': 295},\n", " '54': {'w': 4, 'x': 1, 'y': 10, 'z': 296},\n", " '55': {'w': 5, 'x': 1, 'y': 11, 'z': 297},\n", " '56': {'w': 6, 'x': 1, 'y': 12, 'z': 298},\n", " '57': {'w': 7, 'x': 1, 'y': 13, 'z': 299},\n", " '58': {'w': 8, 'x': 1, 'y': 14, 'z': 300},\n", " '59': {'w': 9, 'x': 1, 'y': 15, 'z': 301},\n", " '60': {'w': 0, 'x': 1, 'y': 6, 'z': 318},\n", " '61': {'w': 1, 'x': 1, 'y': 7, 'z': 319},\n", " '62': {'w': 2, 'x': 1, 'y': 8, 'z': 320},\n", " '63': {'w': 3, 'x': 1, 'y': 9, 'z': 321},\n", " '64': {'w': 4, 'x': 1, 'y': 10, 'z': 322},\n", " '65': {'w': 5, 'x': 1, 'y': 11, 'z': 323},\n", " '66': {'w': 6, 'x': 1, 'y': 12, 'z': 324},\n", " '67': {'w': 7, 'x': 1, 'y': 13, 'z': 325},\n", " '68': {'w': 8, 'x': 1, 'y': 14, 'z': 326},\n", " '69': {'w': 9, 'x': 1, 'y': 15, 'z': 327},\n", " '70': {'w': 0, 'x': 1, 'y': 6, 'z': 344},\n", " '71': {'w': 1, 'x': 1, 'y': 7, 'z': 345},\n", " '72': {'w': 2, 'x': 1, 'y': 8, 'z': 346},\n", " '73': {'w': 3, 'x': 1, 'y': 9, 'z': 347},\n", " '74': {'w': 4, 'x': 1, 'y': 10, 'z': 348},\n", " '75': {'w': 5, 'x': 1, 'y': 11, 'z': 349},\n", " '76': {'w': 6, 'x': 1, 'y': 12, 'z': 350},\n", " '77': {'w': 7, 'x': 1, 'y': 13, 'z': 351},\n", " '78': {'w': 8, 'x': 1, 'y': 14, 'z': 352},\n", " '79': {'w': 9, 'x': 1, 'y': 15, 'z': 353},\n", " '80': {'w': 0, 'x': 1, 'y': 6, 'z': 370},\n", " '81': {'w': 1, 'x': 1, 'y': 7, 'z': 371},\n", " '82': {'w': 2, 'x': 1, 'y': 8, 'z': 372},\n", " '83': {'w': 3, 'x': 1, 'y': 9, 'z': 373},\n", " '84': {'w': 4, 'x': 1, 'y': 10, 'z': 374},\n", " '85': {'w': 5, 'x': 1, 'y': 11, 'z': 375},\n", " '86': {'w': 6, 'x': 1, 'y': 12, 'z': 376},\n", " '87': {'w': 7, 'x': 1, 'y': 13, 'z': 377},\n", " '88': {'w': 8, 'x': 1, 'y': 14, 'z': 378},\n", " '89': {'w': 9, 'x': 1, 'y': 15, 'z': 379},\n", " '90': {'w': 0, 'x': 1, 'y': 6, 'z': 396},\n", " '91': {'w': 1, 'x': 1, 'y': 7, 'z': 397},\n", " '92': {'w': 2, 'x': 1, 'y': 8, 'z': 398},\n", " '93': {'w': 3, 'x': 1, 'y': 9, 'z': 399},\n", " '94': {'w': 4, 'x': 1, 'y': 10, 'z': 400},\n", " '95': {'w': 5, 'x': 1, 'y': 11, 'z': 401},\n", " '96': {'w': 6, 'x': 1, 'y': 12, 'z': 402},\n", " '97': {'w': 7, 'x': 1, 'y': 13, 'z': 403},\n", " '98': {'w': 8, 'x': 1, 'y': 14, 'z': 404},\n", " '99': {'w': 9, 'x': 1, 'y': 15, 'z': 405}}" ] }, "execution_count": 128, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def inputs(n) -> list[str]: return [str(i).zfill(n) for i in range(10 ** n)]\n", "\n", "{i: alu(in24[:36], i) for i in inputs(2)}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "So, *w* is the last digit of the input; *x* is always 1; *y* is 6 more than the last digit, and *z* is 162 + 26 times the first digit plus the last digit.\n", "\n", "**I was unable to figure out was going on.**" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# [Day 25](): Sea Cucumber\n", "\n", "- **Input**: The input is a map of east-moving (`>`) and south-moving (`v`) sea cucumbers.\n" ] }, { "cell_type": "code", "execution_count": 129, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Puzzle input ➜ 137 strs of size 139:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", ">.v>vv>>..vv>..v.v......>v>>>v.>v.>..v...v......v>....>.vv..>>..>>vv.>..vv>>.>...v...v.....>.vv. ...\n", "...vvv.v.vvvv>.v.>..>.>>>v..>v...>..v..>.v>>.v..v.....>v..v.....>vv..vv...vv.v...vv>.v.>..v..v.> ...\n", "..v>..v>.>>vvv>>...v.v..>>....>vv>.>v>v..>>>v...>.......>.>>>v.>>v..vvvv...v.v.v.v...>.vv.>>v>.. ...\n", "..>.....>v>.>vv.v..>>>.>...v>.>.v.>.>vvv....v...v..>.......>v>vvvv>>vv>>>.v>v....vv..v..>>.v>>v. ...\n", "....>.>vv.>.>>.>..vvv.>vv......>...v.v..v..v>...v.v>>..>...vv..>>.>..>v>..>..>...vv.v..v>..v..vv ...\n", "vvvvv.v.v.....v>.vvv.............>vv.vv>v.v..>>v.>..>v>v...>v>v.>vv.>.>......v>vv>.>.>v..v>>>.v> ...\n", ".v..v>..>.>v.vv.>v>v>.v.v>.>v>>v..>.....v..>>...>v>..>.>>.v>v>v.>>>.>...v>>>.v>>....>v...>.>.>.v ...\n", "...>..v.v.v>v.>..>..>.>>>v..vvvv>...>.vv>>..v....>.....>.v>>>v.vv.>v>..v..>>>..vv..>.v..v>..vv.> ...\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", "Parsed representation ➜ 137 strs of size 139:\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n", ">.v>vv>>..vv>..v.v......>v>>>v.>v.>..v...v......v>....>.vv..>>..>>vv.>..vv>>.>...v...v.....>.vv. ...\n", "...vvv.v.vvvv>.v.>..>.>>>v..>v...>..v..>.v>>.v..v.....>v..v.....>vv..vv...vv.v...vv>.v.>..v..v.> ...\n", "..v>..v>.>>vvv>>...v.v..>>....>vv>.>v>v..>>>v...>.......>.>>>v.>>v..vvvv...v.v.v.v...>.vv.>>v>.. ...\n", "..>.....>v>.>vv.v..>>>.>...v>.>.v.>.>vvv....v...v..>.......>v>vvvv>>vv>>>.v>v....vv..v..>>.v>>v. ...\n", "....>.>vv.>.>>.>..vvv.>vv......>...v.v..v..v>...v.v>>..>...vv..>>.>..>v>..>..>...vv.v..v>..v..vv ...\n", "vvvvv.v.v.....v>.vvv.............>vv.vv>v.v..>>v.>..>v>v...>v>v.>vv.>.>......v>vv>.>.>v..v>>>.v> ...\n", ".v..v>..>.>v.vv.>v>v>.v.v>.>v>>v..>.....v..>>...>v>..>.>>.v>v>v.>>>.>...v>>>.v>>....>v...>.>.>.v ...\n", "...>..v.v.v>v.>..>..>.>>>v..vvvv>...>.vv>>..v....>.....>.v>>>v.vv.>v>..v..>>>..vv..>.v..v>..vv.> ...\n", "...\n", "────────────────────────────────────────────────────────────────────────────────────────────────────\n" ] } ], "source": [ "in25 = Grid(parse(25))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 1**: Every step, the sea cucumbers in the east-facing herd attempt to move forward one location, then the sea cucumbers in the south-facing herd attempt to move forward one location. When a herd moves forward, every sea cucumber in the herd first simultaneously considers whether there is a sea cucumber in the adjacent location it's facing (even another sea cucumber facing the same direction), and then every sea cucumber facing an empty location simultaneously moves into that location. **Find somewhere safe to land your submarine. What is the first step on which no sea cucumbers move?**\n", "\n", "Since the herd moves simultaneously, I won't directly update the grid; rather I will keep track of the herd of east-goers (as a set of points) and the herd of south-goers, and update each set on each step. " ] }, { "cell_type": "code", "execution_count": 130, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle 25.1: 575.4 msec, correct answer: 424 " ] }, "execution_count": 130, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def move_cukes(grid) -> int:\n", " \"\"\"Move sea cucumbers according to rules until they stop moving.\n", " Return the number of steps it took.\"\"\"\n", " east = {p for p in grid if grid[p] == '>'}\n", " south = {p for p in grid if grid[p] == 'v'}\n", " width, height = add(max(grid), (1, 1))\n", " for step in count_from(1):\n", " new_east = set(move_herd(east, south, 1, 0, width, height))\n", " new_south = set(move_herd(south, new_east, 0, 1, width, height))\n", " if east == new_east and south == new_south:\n", " return step\n", " east, south = new_east, new_south\n", "\n", "def move_herd(herd: set[Point], other_herd, dx, dy, width, height) -> Iterator[Point]:\n", " \"\"\"The new positions of the herd; they each move by (dx, dy) if that space is open.\"\"\"\n", " for (x, y) in herd:\n", " p2 = ((x + dx) % width, (y + dy) % height)\n", " yield p2 if (p2 not in herd and p2 not in other_herd) else (x, y)\n", " \n", "answer(25.1, 424, lambda: move_cukes(in25))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- **Part 2**: Unfortunately, Part 2 of Day 25 just asks if you had solved all the other puzzles. I hadn't." ] }, { "cell_type": "markdown", "metadata": { "tags": [] }, "source": [ "# Submarine Captain's Log, Supplemental\n", "\n", "I was busy near the end of the month and didn't complete days **19, 23, and 24**. 19 is a bit tedious, but shouldn't be conceptually hard. 23 is easy; just need to apply standard graph-search ideas. For 24, I have no idea. I need to reverse engineer the program to understand what it is actually doing. \n", "\n", "Here is a summary of the results. Three puzzles took over a second, but none took two seconds; the total was under 7 seonds." ] }, { "cell_type": "code", "execution_count": 132, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Time in milliseconds: sum = 6,398.8, mean = 148.8, median = 3.8, max = 1,764.6\n", "\n", "Puzzle 1.1: 0.1 msec, correct answer: 1400 \n", "Puzzle 1.2: 0.4 msec, correct answer: 1429 \n", "Puzzle 2.1: 0.0 msec, correct answer: 1670340 \n", "Puzzle 2.2: 0.0 msec, correct answer: 1954293920 \n", "Puzzle 3.1: 0.6 msec, correct answer: 2261546 \n", "Puzzle 3.2: 0.2 msec, correct answer: 6775520 \n", "Puzzle 4.1: 1.1 msec, correct answer: 39902 \n", "Puzzle 4.2: 2.1 msec, correct answer: 26936 \n", "Puzzle 5.1: 17.2 msec, correct answer: 7436 \n", "Puzzle 5.2: 30.9 msec, correct answer: 21104 \n", "Puzzle 6.1: 0.1 msec, correct answer: 350917 \n", "Puzzle 6.2: 0.3 msec, correct answer: 1592918715629 \n", "Puzzle 7.1: 0.1 msec, correct answer: 352707 \n", "Puzzle 7.2: 147.9 msec, correct answer: 95519693 \n", "Puzzle 8.1: 0.0 msec, correct answer: 493 \n", "Puzzle 8.2: 346.6 msec, correct answer: 1010460 \n", "Puzzle 9.1: 7.4 msec, correct answer: 607 \n", "Puzzle 9.2: 14.0 msec, correct answer: 900864 \n", "Puzzle 10.1: 0.6 msec, correct answer: 367059 \n", "Puzzle 10.2: 0.4 msec, correct answer: 1952146692 \n", "Puzzle 11.1: 3.8 msec, correct answer: 1591 \n", "Puzzle 11.2: 11.1 msec, correct answer: 314 \n", "Puzzle 12.1: 5.0 msec, correct answer: 4167 \n", "Puzzle 12.2: 123.4 msec, correct answer: 98441 \n", "Puzzle 13.1: 0.1 msec, correct answer: 638 \n", "Puzzle 13.2: 3.3 msec, correct answer: CJCKBAPB \n", "Puzzle 14.1: 0.2 msec, correct answer: 3259 \n", "Puzzle 14.2: 0.8 msec, correct answer: 3459174981021 \n", "Puzzle 15.1: 31.6 msec, correct answer: 687 \n", "Puzzle 15.2: 1,058.6 msec, correct answer: 2957 \n", "Puzzle 16.1: 0.1 msec, correct answer: 989 \n", "Puzzle 16.2: 0.0 msec, correct answer: 7936430475134 \n", "Puzzle 17.1: 10.5 msec, correct answer: 5050 \n", "Puzzle 17.2: 130.6 msec, correct answer: 2223 \n", "Puzzle 18.1: 16.2 msec, correct answer: 4457 \n", "Puzzle 18.2: 321.7 msec, correct answer: 4784 \n", "Puzzle 20.1: 29.7 msec, correct answer: 5437 \n", "Puzzle 20.2: 1,684.6 msec, correct answer: 19340 \n", "Puzzle 21.1: 0.1 msec, correct answer: 1002474 \n", "Puzzle 21.2: 52.4 msec, correct answer: 919758187195363\n", "Puzzle 22.1: 4.9 msec, correct answer: 533863 \n", "Puzzle 22.2: 1,764.6 msec, correct answer: 1261885414840992\n", "Puzzle 25.1: 575.4 msec, correct answer: 424 \n" ] } ], "source": [ "summary(answers)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.13.3" } }, "nbformat": 4, "nbformat_minor": 4 }