-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathindex.js
39 lines (32 loc) · 823 Bytes
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/**
* @param {character[][]} matrix
* @return {number}
*/
var maximalSquare = function(matrix) {
let m = matrix.length;
if(m === 0) return 0;
let n = matrix[0].length;
let ans = 0;
for(var i = 0; i<m; i++){
for(var j=0; j<n; j++){
find(i,j);
}
}
function find(x,y){
let max = 0;
let num = 0;
let flag = true;
while(flag && (x+num) < m && (y+num) < n ){
for(var i = 0; i<=num; i++){
if(matrix[x+i][y+num] != 1) flag = false;
if(matrix[x+num][y+i] != 1) flag = false;
}
if(flag){
max++;
}
num++;
}
ans = Math.max(ans, max);
}
return ans * ans;
};