In this series, I'll share my progress with the 2023 version of Advent of Code.
Check the first post for a short intro to this series.
You can also follow my progress on GitHub.
December 6th
The puzzle of day 6 took me only half an hour. I'm using a brute-force implementation for the second part, which is a bit disappointing but I need the saved time for the second part of yesterday's puzzle.
My pitfall for this puzzle: The second part of the puzzle deserves something better than the current brute-force implementation. Unfortunately, I could spend no more time on it.
Solution here, do not click if you want to solve the puzzle first yourself
#!/usr/bin/env python3 import math import re with open('input-small.txt') as infile: lines = infile.readlines() times = [t for t in re.split('\s+', lines[0].split(':')[1].strip())] distances = [d for d in re.split('\s+', lines[1].split(':')[1].strip())] ways = [] for index, t in enumerate([int (t) for t in times]): way = 0 for i in range(1, t + 1): if i * (t - i) > int(distances[index]): way += 1 ways.append(way) print(math.prod(ways)) time = int(''.join(times)) distance = int(''.join(distances)) ways = 0 for i in range(1, time + 1): if i * (time - i) > distance: ways += 1 print(ways)
That's it! See you again tomorrow!
Top comments (0)