对每一行求和,如果等于一的话遍历该行为1的列,如果找到另一台的话结果加1;如果和不等于1(0或者大于1),则将结果加上和(该行可以通信的台数)。
class Solution:
def countServers(self, grid: List[List[int]]) -> int:
ans = 0
for i in range(len(grid)):
s = sum(grid[i])
if s == 1:
# 遍历为1的列
j = grid[i].index(1)
for k in range(len(grid)):
if k != i and grid[k][j] == 1:
ans += 1
break
else:
ans += s
return ans