Tom
0
Q:

area of the sub submatrix

# Python3 code for Maximum size 
# square sub-matrix with all 1s 
  
def printMaxSubSquare(M): 
    R = len(M) # no. of rows in M[][] 
    C = len(M[0]) # no. of columns in M[][] 
  
    S = [[0 for k in range(C)] for l in range(R)] 
    # here we have set the first row and column of S[][] 
  
    # Construct other entries 
    for i in range(1, R): 
        for j in range(1, C): 
            if (M[i][j] == 1): 
                S[i][j] = min(S[i][j-1], S[i-1][j], 
                            S[i-1][j-1]) + 1
            else: 
                S[i][j] = 0
      
    # Find the maximum entry and 
    # indices of maximum entry in S[][] 
    max_of_s = S[0][0] 
    max_i = 0
    max_j = 0
    for i in range(R): 
        for j in range(C): 
            if (max_of_s < S[i][j]): 
                max_of_s = S[i][j] 
                max_i = i 
                max_j = j 
  
    print("Maximum size sub-matrix is: ") 
    for i in range(max_i, max_i - max_of_s, -1): 
        for j in range(max_j, max_j - max_of_s, -1): 
            print (M[i][j], end = " ") 
        print("") 
  
# Driver Program 
M = [[0, 1, 1, 0, 1], 
    [1, 1, 0, 1, 0], 
    [0, 1, 1, 1, 0], 
    [1, 1, 1, 1, 0], 
    [1, 1, 1, 1, 1], 
    [0, 0, 0, 0, 0]] 
  
printMaxSubSquare(M) 
  
# This code is contributed by Soumen Ghosh 
0

New to Communities?

Join the community