from math import prod from pathlib import Path FILE = "input.txt" def main(): raw_lines = Path(FILE).read_text().splitlines() lines: list[list[str]] = [line.split() for line in raw_lines if line.strip()] problems: list[list[str]] = [list(col) for col in zip(*lines)] return sum(compute([int(x) for x in problem[:-1]], problem[-1]) for problem in problems) def compute(vals: list[int], op: str) -> int: if op == '+': return sum(vals) elif op == '*': return prod(vals) else: print(f"unknown operator: {op}") return 0 if __name__ == "__main__": print(main())