【发布时间】:2022-12-14 21:36:41
【问题描述】:
想象一下,我有一个矩阵,我需要计算有多少个交叉点。近十字是普通十字的延伸,这意味着矩阵的整行和整列的数字相同,但交点处的数字可能不同。我应该如何寻找交叉点然后测试附近的交叉点?
测试用例:
[[1, 1, 1, 1, 1],
[2, 2, 1, 3, 3],
[1, 2, 1, 2, 2],
[5, 5, 1, 6, 6],
[2, 2, 1, 1, 1]]
和
[[1, 1, 0, 1, 1],
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 0],
[0, 0, 1, 0, 0]]
两者都有 1 个近交叉。
[[1, 1, 0, 1, 1],
[0, 0, 1, 1, 0],
[1, 1, 1, 0, 1],
[0, 0, 1, 1, 0],
[0, 0, 1, 1, 0]]
有 2 个近十字架。
【问题讨论】:
-
请提供您为解决此问题而尝试过的尝试代码。
-
你的矩阵总是 5x5 吗?
-
我不禁认为您只需要检查
np.unique(matrix, axis=0)和np.unique(matrix, axis=1)<= 2 的位置。