Browse Source

Correcting where the direction check happens

pull/5/head
Ryan Reed 3 years ago
parent
commit
9ab9d388ea
1 changed files with 12 additions and 12 deletions
  1. +12
    -12
      puzzles/day05.py

+ 12
- 12
puzzles/day05.py View File

@ -30,9 +30,9 @@ class VolcanicVent:
def __post_init__(self):
if self.start.x == self.end.x or self.start.y == self.end.y:
self.type = "vertical" if self.start.x == self.end.x else "horizontal"
self.direction = "vertical" if self.start.x == self.end.x else "horizontal"
else:
self.type = "diagnal"
self.direction = "diagnal"
class Chart:
@ -60,17 +60,17 @@ class Chart:
vents = self.vents.copy()
for vent in vents:
min_x = min(vent.start.x, vent.end.x)
max_x = max(vent.start.x, vent.end.x)
min_y = min(vent.start.y, vent.end.y)
max_y = max(vent.start.y, vent.end.y)
for x in range(min_x, max_x + 1):
for y in range(min_y, max_y + 1):
if vent.type != "diagnal":
if vent.direction != "diagnal":
min_x = min(vent.start.x, vent.end.x)
max_x = max(vent.start.x, vent.end.x)
min_y = min(vent.start.y, vent.end.y)
max_y = max(vent.start.y, vent.end.y)
for x in range(min_x, max_x + 1):
for y in range(min_y, max_y + 1):
self.diagram[x, y] += 1
else:
pass
else:
pass
def calculate_overlaps(self, max_depth: int = 1) -> int:
return sum(depth_count > max_depth for depth_count in self.diagram.values())


Loading…
Cancel
Save