一开始看成服务器之间必须连续的了,搞得还用深度优先搜索写成来了,然后发现只需要同行或者同列即可,真实冤大头
class Solution:
def countServers(self, grid: List[List[int]]) -> int:
m, n = len(grid), len(grid[0])
count_m, count_n = [0] * m, [0] * n
for i in range(m):
for j in range(n):
if grid[i][j] == 1:
count_m[i] += 1
count_n[j] += 1
ans = 0
for i in range(m):
for j in range(n):
if grid[i][j] == 1 and (count_m[i] > 1 or count_n[j] > 1):
ans += 1
return ans