from __future__ import annotations import numpy as np def is_consistent_pair(grid, *, cell: int, value: int, t: int = 3, n: int = 9) -> bool: g = np.asarray(grid, dtype=int).reshape(int(n), int(n)) cell = int(cell) value = int(value) if value < 1 or value > int(n): return False rr, cc = divmod(cell, int(n)) current = int(g[rr, cc]) if current != 0 and current != value: return False row = g[rr, :] for idx, existing in enumerate(row): if idx != cc and int(existing) == value: return False col = g[:, cc] for idx, existing in enumerate(col): if idx != rr and int(existing) == value: return False box_r = (rr // int(t)) * int(t) box_c = (cc // int(t)) * int(t) for r in range(box_r, box_r + int(t)): for c in range(box_c, box_c + int(t)): if (r != rr or c != cc) and int(g[r, c]) == value: return False return True