1277. Count Square Submatrices with All Ones (Medium) - TengnanYao/daily_leetcode GitHub Wiki

class Solution:
    def countSquares(self, matrix: List[List[int]]) -> int:
        m, n = len(matrix), len(matrix[0])
        result = 0
        for i in range(m):
            for j in range(n):
                if matrix[i][j] == 1:
                    if i == 0 or j == 0:
                        result += 1
                    else:
                        matrix[i][j] = min(matrix[i - 1][j], matrix[i][j - 1], matrix[i - 1][j - 1]) + 1
                        result += matrix[i][j]
        return result