天天看點

Leetcode 1267. Count Servers that Communicate

1. Description

Leetcode 1267. Count Servers that Communicate

2. Solution

**解析:**Version 1,統計行和和列和,然後逐個判斷。

  • Version 1
class Solution:
    def countServers(self, grid: List[List[int]]) -> int:
        m = len(grid)
        n = len(grid[0])
        # rowSum = [sum(grid[i]) for i in range(m)]
        # colSum = [sum(x) for x in zip(*grid)]
        rowSum = [0] * m
        colSum = [0] * n
        for i in range(m):
            for j in range(n):
                if grid[i][j] == 1:
                    rowSum[i] += 1
                    colSum[j] += 1
        count = 0
        for i in range(m):
            for j in range(n):
                if grid[i][j] == 1 and (rowSum[i] > 1 or colSum[j] > 1):
                    count += 1
        return count           

複制

Reference

  1. https://leetcode.com/problems/count-servers-that-communicate/