diff options
author | Marvin Borner | 2023-12-01 14:10:48 +0100 |
---|---|---|
committer | Marvin Borner | 2023-12-01 14:15:26 +0100 |
commit | e1d0c91525c94074e562f41102241b9eb0638bf7 (patch) | |
tree | b5c34605853b64bca823f3bcdfe61cc8a71efd14 /2023 | |
parent | 728808f2f605671c78269c82c8c90ecb4183c334 (diff) |
huh
Diffstat (limited to '2023')
-rwxr-xr-x | 2023/01/solve.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/2023/01/solve.py b/2023/01/solve.py new file mode 100755 index 0000000..9da84bf --- /dev/null +++ b/2023/01/solve.py @@ -0,0 +1,17 @@ +#!/bin/env python + +# i don't like regex + +L = open("input").readlines() + +def part1(): + print(sum((n := list(filter(lambda x: x.isdigit(), l.strip())), int(n[0] + n[-1]))[1] for l in L)) + + +def part2(): + u = ["one", "two", "three", "four", "five", "six", "seven", "eight", "nine"] + print(sum((i := [int(p[0]) if p[0].isdigit() else u.index(p[: len(n)]) + 1 for p in r for n in u if p.startswith(n) or p[0].isdigit()], i[0] * 10 + i[-1])[1] for r in [[l[i : i + 7] for i in range(len(l))] for l in L])) + + +part1() +part2() |