Maximal Square
Given an m x n binary matrix filled with 0's and 1's, find the largest square containing only 1's and return its area.
Example 1
1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 0 1 0
Input
matrix = [["1","0","1","0","0"],["1","0","1","1","1"],["1","1","1","1","1"],["1","0","0","1","0"]]Output
4The largest square containing only 1's has side length 2, so its area is 4.
Example 2
0 1 1 0
Input
matrix = [["0","1"],["1","0"]]Output
1Any square containing only 1's has maximum side length 1, so the area is 1.
Constraints
- m == matrix.length
- n == matrix[i].length
- 1 <= m, n <= 300
- matrix[i][j] is '0' or '1'.