advent-of-code/2025-python
Anders Englöf Ytterström 8683885438 Solve 2025 day 7 pt 1-2
For part 1, BFS is used since there is no need to
visit each splitter more than once to count visited
splitters.

For part 2, the code initially removed the visited
check. This failed miserably, losing momentum aound
Y=54-56.

A recursive function with memoization solves it much
faster.
2025-12-10 00:34:12 +01:00
..
output Solve 2025 day 7 pt 1-2 2025-12-10 00:34:12 +01:00
aoc.py Initiate Advent of Code 2025 2025-12-10 00:34:12 +01:00
README.md Initiate Advent of Code 2025 2025-12-10 00:34:12 +01:00

Advent of Code 2025

Solutions for #aoc2025 in Python 3 (3.13.4).

Programming setup:

  • Lenovo Thinkpad T14
  • OpenSUSE Tumbleweed with labwc
  • Helix editor w/ Ruff LS
  • Vivaldi
  • Foot

Help scripts

Display all solved puzzles:

python aoc.py

To bootstrap a new puzzle (creates input/<day_no>.txt and output/day_<day_no>.py):

python aoc.py <day_no> new

Manually copy the puzzle input from https://adventofcode.com and paste it in input/<day_no>.txt to start coding.

wl-paste > input/<day_no>.txt

Solve separate puzzle (replace XX with the puzzle number):

python -m output.day_XX

Solve separate puzzle using stdin (replace XX with the puzzle number):

wl-paste | python -m output.day_XX
cat tmpfile | python -m output.day_XX

Execute separate puzzle on file save (replace XX with the puzzle number):

ls output/*.py | entr -c -s 'wlpaste | python -m output.day_XX'
ls output/*.py | entr -c -s 'cat tmpfile | python -m output.day_XX'
ls output/*.py | entr -c -r python -m output.day_XX

(requires entr and wl-paste, Mac users can instead use pbpaste. If you prefer X at Linux, use xclip -selection clipboard -o).