• + 0 comments

    Update: This is nice too

    def cavityMap(grid):
        # Write your code here
        for i in range(1, len(grid)-1):
            for j in range(1, len(grid[i])-1):
                if grid[i][j] > max(grid[i-1][j], grid[i][j-1], grid[i+1][j], grid[i][j+1]):
                    grid[i] = grid[i][:j] + 'X' + grid[i][j+1:]
        return grid
    

    A pythonic solution

    def cavityMap(grid):
        # Write your code here
        for i in range(1, len(grid)-1):
            for j in range(1, len(grid[i])-1):
                if grid[i][j-1] < grid[i][j] and grid[i-1][j] < grid[i][j] and grid[i][j+1] < grid[i][j] and grid[i+1][j] < grid[i][j]:
                    grid[i] = ''.join(['X' if a == j else d for a, d in enumerate(grid[i])])
        return grid