查找矩阵中元素数量的程序遵循 Python 中的行列条件
假设我们有一个二元矩阵;我们必须找到遵循以下规则的矩阵中元素的数量 -
矩阵[r, c] = 1
当 j 不等于 c 时,对于每个 j,matrix[r, j] = 0,当 i 不等于 r 时,对于每个 i,matrix[i, c] = 0。
所以,如果输入是这样的
0 | 0 | 1 |
1 | 0 | 0 |
0 | 1 | 0 |
那么输出将是 3,因为我们有满足条件的单元格 (0,2)、(1,0) 和 (2,1)。
示例
让我们看下面的实现来更好地理解
def solve(matrix):if not matrix:
return 0
row = [sum(r) for r in matrix]
col = [sum(c) for c in zip(*matrix)]
m, n = len(matrix), len(matrix[0])
res = 0
for r in range(m):
for c in range(n):
if matrix[r][c] == 1 and row[r] == 1 and col[c] == 1:
res += 1
return res
matrix = [
[0, 0, 1],
[1, 0, 0],
[0, 1, 0]
]
print(solve(matrix))
输入
[[0, 0, 1],[1, 0, 0],[0, 1, 0]]输出结果
3
以上是 查找矩阵中元素数量的程序遵循 Python 中的行列条件 的全部内容, 来源链接: utcz.com/z/322600.html