Leetcode 221 Maximal Square


class Solution:
    # @param {character[][]} matrix
    # @return {integer}
    def maximalSquare(self, matrix):
        if matrix == []:    return 0
        m, n = len(matrix), len(matrix[0])
        dp = [[0]*n for i in range(m)]
        result = 0
        for i in range(m):
            for j in range(n):
                dp[i][j] = int(matrix[i][j])
                if i and j and dp[i][j]:
                    dp[i][j] = min(dp[i-1][j-1], dp[i-1][j], dp[i][j-1]) + 1
                result = max(result, dp[i][j])
        return result*result
        



你可能感兴趣的:(Leetcode刷题)