diff --git a/2025-python/output/__init__.py b/2025-python/output/__init__.py index f78ce66..c1861ff 100644 --- a/2025-python/output/__init__.py +++ b/2025-python/output/__init__.py @@ -1,4 +1,5 @@ import re +from math import inf # Directions/Adjacents for 2D matrices, in the order UP, RIGHT, DOWN, LEFT D = [ @@ -78,12 +79,26 @@ def mdbg(m): print("".join(r)) -def vdbg(seen, h, w, C="#", M=None): +def vdbg(seen, mask=("#", "."), M=None): """Print-debug visited positions of a matrix""" + t = inf + l = inf + b = 0 + r = 0 + for y, x in seen: + t = min(t, y) + r = max(r, x) + b = max(b, y) + l = min(l, x) + H = b - t + 1 + W = r - l + 1 + osr = t + osc = l + C, Z = mask def _m(r, c): - return M[r][c] if M else "." - for r in range(h): - print("".join([C if (r, c) in seen else _m(r, c) for c in range(w)])) + return M[r][c] if M else Z + for r in range(H): + print("".join([C if (r + osr, c + osc) in seen else _m(r, c) for c in range(W)])) def vvdbg(seen, h, w):