My Advent of Code solutions in Python. kevinyap.ca/2019/12/going-fast-in-advent-of-code/
advent-of-code python
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Add solution for 2024/25

+27
+27
2024/day25.py
··· 1 + import fileinput 2 + from itertools import product 3 + 4 + from utils import transposed 5 + 6 + 7 + KEYS = [] 8 + LOCKS = [] 9 + 10 + block = [] 11 + for line in fileinput.input(): 12 + if line == '\n': 13 + if block[0][0] == '#': 14 + KEYS.append(transposed(block)) 15 + else: 16 + LOCKS.append(transposed(block)) 17 + block = [] 18 + else: 19 + block.append(line.strip()) 20 + 21 + # The last image is a lock. 22 + LOCKS.append(block) 23 + 24 + # Solve problem. 25 + KEYS = [[pin.count('#') for pin in key] for key in KEYS] 26 + LOCKS = [[pin.count('#') for pin in lock] for lock in LOCKS] 27 + print("Part 1:", sum(1 if all(a + b <= 7 for a, b in zip(key, lock)) else 0 for key, lock in product(KEYS, LOCKS)))