aoc

My solutions for the Advent of Code
git clone https://git.tronto.net/aoc
Download | Log | Files | Refs | README

b.py (330B)


      1 import fileinput
      2 from functools import cache
      3 
      4 a = {}
      5 with fileinput.input() as lines:
      6 	for line in lines:
      7 		v, l2 = line[:-1].split(': ')
      8 		a[v] = l2.split(' ')
      9 
     10 @cache
     11 def np(v, d, f):
     12 	if v == 'out':
     13 		return 1 if d and f else 0
     14 	return sum(np(w, d or v == 'dac', f or v == 'fft') for w in a[v])
     15 
     16 print(np('svr', False, False))