🌟LeetCode题解:统计网格中3×3幻方子矩阵数量
在解算法题时,我们常常会碰到一些结合数学性质和遍历技巧的问题。这篇文章将带你完整解析一个有趣而富有挑战性的题目——统计一个二维网格中所有满足幻方条件的 3×3 子矩阵数量。
📌 题目描述
给定一个由非负整数构成的 grid
(二维网格),统计其中所有的 3×3 幻方子矩阵 的数量。
幻方定义(Magic Square):
- 是一个填入 1~9 不重复数字 的 3x3 矩阵;
- 每行、每列、两条对角线上的数字之和都必须相等;
- 对于 1~9 的幻方,这个和固定为 15。
注意:
- 网格中的数字可以大于 9(例如最多到 15),但有效的幻方子矩阵仅限使用数字 1~9。
📊 示例
输入:
grid = [
[4, 3, 8, 4],
[9, 5, 1, 9],
[2, 7, 6, 2]
]
输出:
1
解释: