C++ Fast Solution, Easy to understand
\n       int orderOfLargestPlusSign(int n, vector<vector<int>>& mines) {\n        vector<vector<int>>grid(n,vector<int>(n,1000));\n        \n         for(auto i
```\n       int orderOfLargestPlusSign(int n, vector<vector<int>>& mines) {\n        vector<vector<int>>grid(n,vector<int>(n,1000));\n        \n         for(auto i:mines){\n            grid[i[0]][i[1]]=0;\n            \n        }\n        for(int i=0;i<n;i++){\n            int l=0;\n            for(int j=0;j<n;j++)\n            {\n                int temp=grid[i][j];\n                \n                if(temp!=0)\n                    l++;\n                else\n                    l=0;\n                grid[i][j]=min(grid[i][j],l);\n            }\n            int r=0;\n            for(int j=n-1;j>=0;j--){\n                int temp=grid[i][j];\n                \n                if(temp!=0)\n                    r++;\n                else\n                    r=0;\n                grid[i][j]=min(grid[i][j],r);\n            }\n            int d=0;\n            for(int j=0;j<n;j++)\n            {\n                int temp=grid[j][i];\n                \n                if(temp!=0)\n                    d++;\n                else\n                    d=0;\n                grid[j][i]=min(grid[j][i],d);\n            }\n            int t=0;\n            for(int j=n-1;j>=0;j--){\n                int temp=grid[j][i];\n                \n                if(temp!=0)\n                    t++;\n                else\n                    t=0;\n                grid[j][i]=min(grid[j][i],t);\n            }\n        }\n        int ans=0;\n        for(int i=0;i<n;i++){\n            for(int j=0;j<n;j++)\n            {\n           \n            ans=max(ans,grid[i][j]);\n            }\n        }\n        return ans;\n    }\n```
[]