Cleanup
This commit is contained in:
145
2024/day13/problem
Normal file
145
2024/day13/problem
Normal file
@@ -0,0 +1,145 @@
|
||||
Advent of Code
|
||||
|
||||
--- Day 13: Claw Contraption ---
|
||||
|
||||
Next up: the [16]lobby of a resort on a tropical island. The Historians
|
||||
take a moment to admire the hexagonal floor tiles before spreading out.
|
||||
|
||||
Fortunately, it looks like the resort has a new [17]arcade! Maybe you can
|
||||
win some prizes from the [18]claw machines?
|
||||
|
||||
The claw machines here are a little unusual. Instead of a joystick or
|
||||
directional buttons to control the claw, these machines have two buttons
|
||||
labeled A and B. Worse, you can't just put in a token and play; it costs 3
|
||||
tokens to push the A button and 1 token to push the B button.
|
||||
|
||||
With a little experimentation, you figure out that each machine's buttons
|
||||
are configured to move the claw a specific amount to the right (along the
|
||||
X axis) and a specific amount forward (along the Y axis) each time that
|
||||
button is pressed.
|
||||
|
||||
Each machine contains one prize; to win the prize, the claw must be
|
||||
positioned exactly above the prize on both the X and Y axes.
|
||||
|
||||
You wonder: what is the smallest number of tokens you would have to spend
|
||||
to win as many prizes as possible? You assemble a list of every machine's
|
||||
button behavior and prize location (your puzzle input). For example:
|
||||
|
||||
Button A: X+94, Y+34
|
||||
Button B: X+22, Y+67
|
||||
Prize: X=8400, Y=5400
|
||||
|
||||
Button A: X+26, Y+66
|
||||
Button B: X+67, Y+21
|
||||
Prize: X=12748, Y=12176
|
||||
|
||||
Button A: X+17, Y+86
|
||||
Button B: X+84, Y+37
|
||||
Prize: X=7870, Y=6450
|
||||
|
||||
Button A: X+69, Y+23
|
||||
Button B: X+27, Y+71
|
||||
Prize: X=18641, Y=10279
|
||||
|
||||
This list describes the button configuration and prize location of four
|
||||
different claw machines.
|
||||
|
||||
For now, consider just the first claw machine in the list:
|
||||
|
||||
• Pushing the machine's A button would move the claw 94 units along the
|
||||
X axis and 34 units along the Y axis.
|
||||
• Pushing the B button would move the claw 22 units along the X axis and
|
||||
67 units along the Y axis.
|
||||
• The prize is located at X=8400, Y=5400; this means that from the
|
||||
claw's initial position, it would need to move exactly 8400 units
|
||||
along the X axis and exactly 5400 units along the Y axis to be
|
||||
perfectly aligned with the prize in this machine.
|
||||
|
||||
The cheapest way to win the prize is by pushing the A button 80 times and
|
||||
the B button 40 times. This would line up the claw along the X axis
|
||||
(because 80*94 + 40*22 = 8400) and along the Y axis (because 80*34 + 40*67
|
||||
= 5400). Doing this would cost 80*3 tokens for the A presses and 40*1 for
|
||||
the B presses, a total of 280 tokens.
|
||||
|
||||
For the second and fourth claw machines, there is no combination of A and
|
||||
B presses that will ever win a prize.
|
||||
|
||||
For the third claw machine, the cheapest way to win the prize is by
|
||||
pushing the A button 38 times and the B button 86 times. Doing this would
|
||||
cost a total of 200 tokens.
|
||||
|
||||
So, the most prizes you could possibly win is two; the minimum tokens you
|
||||
would have to spend to win all (two) prizes is 480.
|
||||
|
||||
You estimate that each button would need to be pressed no more than 100
|
||||
times to win a prize. How else would someone be expected to play?
|
||||
|
||||
Figure out how to win as many prizes as possible. What is the fewest
|
||||
tokens you would have to spend to win all possible prizes?
|
||||
|
||||
Your puzzle answer was 30973.
|
||||
|
||||
--- Part Two ---
|
||||
|
||||
As you go to win the first prize, you discover that the claw is nowhere
|
||||
near where you expected it would be. Due to a unit conversion error in
|
||||
your measurements, the position of every prize is actually 10000000000000
|
||||
higher on both the X and Y axis!
|
||||
|
||||
Add 10000000000000 to the X and Y position of every prize. After making
|
||||
this change, the example above would now look like this:
|
||||
|
||||
Button A: X+94, Y+34
|
||||
Button B: X+22, Y+67
|
||||
Prize: X=10000000008400, Y=10000000005400
|
||||
|
||||
Button A: X+26, Y+66
|
||||
Button B: X+67, Y+21
|
||||
Prize: X=10000000012748, Y=10000000012176
|
||||
|
||||
Button A: X+17, Y+86
|
||||
Button B: X+84, Y+37
|
||||
Prize: X=10000000007870, Y=10000000006450
|
||||
|
||||
Button A: X+69, Y+23
|
||||
Button B: X+27, Y+71
|
||||
Prize: X=10000000018641, Y=10000000010279
|
||||
|
||||
Now, it is only possible to win a prize on the second and fourth claw
|
||||
machines. Unfortunately, it will take many more than 100 presses to do so.
|
||||
|
||||
Using the corrected prize coordinates, figure out how to win as many
|
||||
prizes as possible. What is the fewest tokens you would have to spend to
|
||||
win all possible prizes?
|
||||
|
||||
Your puzzle answer was 95688837203288.
|
||||
|
||||
Both parts of this puzzle are complete! They provide two gold stars: **
|
||||
|
||||
At this point, you should [19]return to your Advent calendar and try
|
||||
another puzzle.
|
||||
|
||||
If you still want to see it, you can [20]get your puzzle input.
|
||||
|
||||
References
|
||||
|
||||
Visible links
|
||||
1. https://adventofcode.com/
|
||||
2. https://adventofcode.com/2024/about
|
||||
3. https://adventofcode.com/2024/events
|
||||
4. https://cottonbureau.com/people/advent-of-code
|
||||
5. https://adventofcode.com/2024/settings
|
||||
6. https://adventofcode.com/2024/auth/logout
|
||||
7. Advent of Code Supporter
|
||||
https://adventofcode.com/2024/support
|
||||
8. https://adventofcode.com/2024
|
||||
9. https://adventofcode.com/2024
|
||||
10. https://adventofcode.com/2024/support
|
||||
11. https://adventofcode.com/2024/sponsors
|
||||
12. https://adventofcode.com/2024/leaderboard
|
||||
13. https://adventofcode.com/2024/stats
|
||||
16. https://adventofcode.com/2020/day/24
|
||||
17. https://en.wikipedia.org/wiki/Amusement_arcade
|
||||
18. https://en.wikipedia.org/wiki/Claw_machine
|
||||
19. https://adventofcode.com/2024
|
||||
20. https://adventofcode.com/2024/day/13/input
|
Reference in New Issue
Block a user