advent-of-code/2024/3/two.py
2024-12-25 12:59:49 +01:00

27 lines
574 B
Python

#!/usr/bin/env python3
import sys
import re
input_file = sys.argv[1]
with open(input_file) as fd:
lines = [line.rstrip() for line in fd.readlines()]
t = 0
en = True
reg = r"mul\(([0-9]+),([0-9]+)\)|do\(\)|don't\(\)"
for line in lines:
for match in re.finditer(reg, line):
all = match.group(0)
if all == "do()":
en = True
elif all == "don't()":
en = False
elif en:
ast, bst = match.group(1), match.group(2)
a, b = int(ast), int(bst)
m = a * b
t += m
print(t)