AoC/2023/days/06/part2.py

29 lines
623 B
Python
Raw Normal View History

2024-06-02 17:38:51 +02:00
with open("data/sample.txt", "r") as f:
data = f.read()
data = data.split("\n")
times = data[0].split(":")[1].replace(" ", "").split()
distances = data[1].split(":")[1].replace(" ", "").split()
times = [int(i) for i in times]
distances = [int(i) for i in distances]
# print(times)
# print(distances)
product = 1
def distance(pressed_duration, limit_duration):
return pressed_duration * (limit_duration - pressed_duration)
for time, dist in zip(times, distances):
count = 0
for i in range(0, time + 1):
if distance(i, time) > dist:
count += 1
product *= count
print(product)