查找矩阵中元素数量的程序遵循 Python 中的行列条件
假设我们有一个二元矩阵;我们必须找到遵循以下规则的矩阵中元素的数量-
矩阵[r,c]=1
当j不等于c时,对于每个j,matrix[r,j]=0,当i不等于r时,对于每个i,matrix[i,c]=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