from collections import deque from lib import Grid2D from lib import get_data data = get_data(__file__) g = Grid2D(data) p1 = 0 p2 = 0 for start in g.find("0"): queue = deque([start]) all = set() while queue: node = queue.popleft() if g[node] == "9": all.add(node) p2 += 1 for nb in g.neighbors_ort(node): if int(g[node]) + 1 == int(g[nb]): queue.append(nb) p1 += len(all) print(p1) print(p2)