day 3 slight simplification
parent
46ba7f1593
commit
6c0f46fd2b
21
day03/sol.py
21
day03/sol.py
|
@ -38,19 +38,18 @@ for no, line in enumerate(data):
|
|||
i = j
|
||||
else:
|
||||
i += 1
|
||||
|
||||
|
||||
for n, pos in zip(digits, places):
|
||||
if any(nexttosymbol(no, i) for i in pos):
|
||||
print(n)
|
||||
part1 += n
|
||||
|
||||
seen = set()
|
||||
nearby_gears = set()
|
||||
for i in pos:
|
||||
for g in findgears(no,i):
|
||||
if g not in seen:
|
||||
gears.setdefault(g, []).append(n)
|
||||
seen.add(g)
|
||||
|
||||
nearby_gears.update(findgears(no, i))
|
||||
for g in nearby_gears:
|
||||
gears.setdefault(g, []).append(n)
|
||||
|
||||
print(part1)
|
||||
|
||||
part2 = 0
|
||||
|
@ -58,11 +57,3 @@ for g, nums in gears.items():
|
|||
if len(nums) == 2:
|
||||
part2 += nums[0] * nums[1]
|
||||
print(part2)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue