diff options
| author | Sebastiano Tronto <sebastiano@tronto.net> | 2025-12-07 09:14:27 +0100 |
|---|---|---|
| committer | Sebastiano Tronto <sebastiano@tronto.net> | 2025-12-07 09:14:27 +0100 |
| commit | eb233235c876600bafa39a538d18ce11cfc72b39 (patch) | |
| tree | 38f074d2e158d8109476d39ea6426ce8b60e98b2 /2025/07/b2.py | |
| parent | 61718ca8b469ebad7ed59da0ed3c167046cd8e57 (diff) | |
| download | aoc-eb233235c876600bafa39a538d18ce11cfc72b39.tar.gz aoc-eb233235c876600bafa39a538d18ce11cfc72b39.zip | |
Clean up and alternative solution to day 7
Diffstat (limited to '2025/07/b2.py')
| -rw-r--r-- | 2025/07/b2.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/2025/07/b2.py b/2025/07/b2.py new file mode 100644 index 0000000..b77188c --- /dev/null +++ b/2025/07/b2.py | |||
| @@ -0,0 +1,17 @@ | |||
| 1 | import fileinput | ||
| 2 | |||
| 3 | with fileinput.input() as lines: | ||
| 4 | rows = [line[:-1] for line in lines] | ||
| 5 | |||
| 6 | t = [1 if x == 'S' else 0 for x in rows[0]] | ||
| 7 | for row in rows[1:]: | ||
| 8 | next = [0] * len(row) | ||
| 9 | for i in range(len(row)): | ||
| 10 | if row[i] == '^': | ||
| 11 | next[i-1] += t[i] | ||
| 12 | next[i+1] += t[i] | ||
| 13 | else: | ||
| 14 | next[i] += t[i] | ||
| 15 | t = next | ||
| 16 | |||
| 17 | print(sum(t)) | ||
