class Solution {
public:
int maxAreaOfIsland(vector<vector<int>>& grid) {
int res=0;
for(int i=0;i<grid.size();i++) {
for(int j=0;j<grid[0].size();j++) {
if(grid[i][j]==1) {
int a=area(grid,i,j);
res=max(res,a);
}
}
}
return res;
}
int area(vector<vector<int>>& grid,int r,int c) {
if(!inArea(grid,r,c)||grid[r][c]!=1) return 0;
grid[r][c]=2;
return 1+area(grid,r-1,c)+area(grid,r+1,c)+area(grid,r,c-1)+area(grid,r,c+1);
}
bool inArea(vector<vector<int>>& grid,int r,int c) {
return r>=0&&r<grid.size()&&c>=0&&c<grid[0].size();
}
};
Leetcode695(力扣695):岛屿的最大面积
最新推荐文章于 2022-10-06 21:00:16 发布