104 lines
3.8 KiB
Plaintext
104 lines
3.8 KiB
Plaintext
|
# Advent of Code
|
|||
|
|
|||
|
--- Day 5: Hydrothermal Venture ---
|
|||
|
|
|||
|
You come across a field of hydrothermal vents on the ocean floor! These vents constantly produce large, opaque clouds, so it would be best to avoid them if possible.
|
|||
|
|
|||
|
They tend to form in lines; the submarine helpfully produces a list of nearby lines of vents (your puzzle input) for you to review. For example:
|
|||
|
|
|||
|
0,9 -> 5,9
|
|||
|
8,0 -> 0,8
|
|||
|
9,4 -> 3,4
|
|||
|
2,2 -> 2,1
|
|||
|
7,0 -> 7,4
|
|||
|
6,4 -> 2,0
|
|||
|
0,9 -> 2,9
|
|||
|
3,4 -> 1,4
|
|||
|
0,0 -> 8,8
|
|||
|
5,5 -> 8,2
|
|||
|
|
|||
|
Each line of vents is given as a line segment in the format x1,y1 -> x2,y2 where x1,y1 are the coordinates of one end the line segment and x2,y2 are the coordinates of the other end. These line segments include the points at both
|
|||
|
ends. In other words:
|
|||
|
|
|||
|
• An entry like 1,1 -> 1,3 covers points 1,1, 1,2, and 1,3.
|
|||
|
• An entry like 9,7 -> 7,7 covers points 9,7, 8,7, and 7,7.
|
|||
|
|
|||
|
For now, only consider horizontal and vertical lines: lines where either x1 = x2 or y1 = y2.
|
|||
|
|
|||
|
So, the horizontal and vertical lines from the above list would produce the following diagram:
|
|||
|
|
|||
|
.......1..
|
|||
|
..1....1..
|
|||
|
..1....1..
|
|||
|
.......1..
|
|||
|
.112111211
|
|||
|
..........
|
|||
|
..........
|
|||
|
..........
|
|||
|
..........
|
|||
|
222111....
|
|||
|
|
|||
|
In this diagram, the top left corner is 0,0 and the bottom right corner is 9,9. Each position is shown as the number of lines which cover that point or . if no line covers that point. The top-left pair of 1s, for example, comes
|
|||
|
from 2,2 -> 2,1; the very bottom row is formed by the overlapping lines 0,9 -> 5,9 and 0,9 -> 2,9.
|
|||
|
|
|||
|
To avoid the most dangerous areas, you need to determine the number of points where at least two lines overlap. In the above example, this is anywhere in the diagram with a 2 or larger - a total of 5 points.
|
|||
|
|
|||
|
Consider only horizontal and vertical lines. At how many points do at least two lines overlap?
|
|||
|
|
|||
|
Your puzzle answer was 5632.
|
|||
|
|
|||
|
--- Part Two ---
|
|||
|
|
|||
|
Unfortunately, considering only horizontal and vertical lines doesn't give you the full picture; you need to also consider diagonal lines.
|
|||
|
|
|||
|
Because of the limits of the hydrothermal vent mapping system, the lines in your list will only ever be horizontal, vertical, or a diagonal line at exactly 45 degrees. In other words:
|
|||
|
|
|||
|
• An entry like 1,1 -> 3,3 covers points 1,1, 2,2, and 3,3.
|
|||
|
• An entry like 9,7 -> 7,9 covers points 9,7, 8,8, and 7,9.
|
|||
|
|
|||
|
Considering all lines from the above example would now produce the following diagram:
|
|||
|
|
|||
|
1.1....11.
|
|||
|
.111...2..
|
|||
|
..2.1.111.
|
|||
|
...1.2.2..
|
|||
|
.112313211
|
|||
|
...1.2....
|
|||
|
..1...1...
|
|||
|
.1.....1..
|
|||
|
1.......1.
|
|||
|
222111....
|
|||
|
|
|||
|
You still need to determine the number of points where at least two lines overlap. In the above example, this is still anywhere in the diagram with a 2 or larger - now a total of 12 points.
|
|||
|
|
|||
|
Consider all of the lines. At how many points do at least two lines overlap?
|
|||
|
|
|||
|
Your puzzle answer was 22213.
|
|||
|
|
|||
|
Both parts of this puzzle are complete! They provide two gold stars: **
|
|||
|
|
|||
|
At this point, you should return to your Advent calendar and try another puzzle.
|
|||
|
|
|||
|
If you still want to see it, you can get your puzzle input.
|
|||
|
|
|||
|
References
|
|||
|
|
|||
|
Visible links
|
|||
|
. https://adventofcode.com/
|
|||
|
. https://adventofcode.com/2021/about
|
|||
|
. https://adventofcode.com/2021/events
|
|||
|
. https://adventofcode.com/2021/settings
|
|||
|
. https://adventofcode.com/2021/auth/logout
|
|||
|
. Advent of Code Supporter
|
|||
|
https://adventofcode.com/2021/support
|
|||
|
. https://adventofcode.com/2021
|
|||
|
. https://adventofcode.com/2021
|
|||
|
. https://adventofcode.com/2021/support
|
|||
|
. https://adventofcode.com/2021/sponsors
|
|||
|
. https://adventofcode.com/2021/leaderboard
|
|||
|
. https://adventofcode.com/2021/stats
|
|||
|
. https://adventofcode.com/2021/sponsors
|
|||
|
. https://en.wikipedia.org/wiki/Hydrothermal_vent
|
|||
|
. https://adventofcode.com/2021
|
|||
|
. https://adventofcode.com/2021/day/5/input
|