From 4db98be450d917a9373fedb11292dd60fd81fb01 Mon Sep 17 00:00:00 2001 From: dzwdz Date: Thu, 8 Dec 2022 17:36:30 +0100 Subject: day 8 part 2 --- 22.8/main.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to '22.8/main.py') diff --git a/22.8/main.py b/22.8/main.py index 624b890..78e67e4 100644 --- a/22.8/main.py +++ b/22.8/main.py @@ -4,7 +4,7 @@ def rot(a): return [list(t) for t in zip(*a[::-1])] def flatten(a): - return sum(vis, []) + return sum(a, []) grid = [[int(c) for c in line.strip()] for line in stdin] vis = [[0 for _ in a] for a in grid] @@ -20,3 +20,16 @@ for _ in range(4): vis = rot(vis) print(len([c for c in flatten(vis) if c > 0])) + +scores = [[1 for _ in a] for a in grid] +for _ in range(4): + for trees, to in zip(grid, scores): + lastBlock = [0] * 10 + for i in range(len(trees)): + h = trees[i] + to[i] *= i - lastBlock[h] + for j in range(h + 1): + lastBlock[j] = i + grid = rot(grid) + scores = rot(scores) +print(max(flatten(scores))) -- cgit 1.4.1-2-gfad0