编辑代码

def findRobotPath(grid):
    if not grid or not grid[0]:
        return []
    
    r, c = len(grid), len(grid[0])
    if grid[0][0] == 1 or grid[r-1][c-1] == 1:
        return []
    
    path = []
    
    def dfs(i, j):
        if i >= r or j >= c or grid[i][j] == 1:
            return False
        
        path.append((i, j))
        
        if i == r - 1 and j == c - 1:
            return True
        

        grid[i][j] = 1
        if dfs(i, j + 1) or dfs(i + 1, j):
            return True
        
        path.pop()
        return False
    
    if dfs(0, 0):
        return path
    else:
        return []
grid = [
    [0, 0, 0],
    [0, 1, 0],
    [0, 0, 0]
]
print(findRobotPath(grid))