Normal Approach (not dp)
\n/**\n * @param {number} n\n * @param {number[][]} mines\n * @return {number}\n */\nvar orderOfLargestPlusSign = function(n, mines) {\n    const row = n; colum
```\n/**\n * @param {number} n\n * @param {number[][]} mines\n * @return {number}\n */\nvar orderOfLargestPlusSign = function(n, mines) {\n    const row = n; column = n\n    const matrix = Array.from(Array(n), () => Array(n).fill(1))\n    for(let [x,y] of mines) {\n        // console.log(x, y)\n        matrix[x][y] = 0\n    }\n    let max = 1, flag = false\n    for(let i = 0; i < n; i++) {\n        for(let j = 0; j < n; j++) {\n            if(matrix[i][j] === 1){\n                max = callCheck(1, max, matrix, i, j)\n                flag = true\n            }\n        }\n    }\n    \n    return flag ? max : 0\n};\n\nconst callCheck = (k, max, matrix, i, j) => {\n    if(i-k < 0 || i+k >= matrix.length || j-k < 0 || j+k >= matrix.length || (matrix[i][j-k] === 0 || matrix[i][j+k] === 0 || matrix[i-k][j] === 0 || matrix[i+k][j] === 0))\n        return max\n    k++\n    max = Math.max(max, k)\n    return callCheck(k, max, matrix, i, j)\n}\n```
['JavaScript']