查找矩阵中元素数量的程序遵循 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