class Solution:
def maxAreaOfIsland(self, grid: List[List[int]]) -> int:
def backtrack(i,j):
if i<0 or j<0 or i>=len(grid) or j>=len(grid[0]):return 0
if grid[i][j]!=1:return 0
cnt=1
grid[i][j]=2
cnt+=backtrack(i+1,j)
cnt+=backtrack(i-1,j)
cnt+=backtrack(i,j+1)
cnt+=backtrack(i,j-1)
return cnt
r=0
for i in range(len(grid)):
for j in range(len(grid[0])):
r=max(r,backtrack(i,j))
return r
dfs计数