腾讯2022校招第二批代码,求指教!!!
def f(nums, x, y): count = 1 queue = [[x, y]] visited = [[x, y]] d = [[-2, -1], [-2, 1], [-1, -2], [-1, 2], [1, -2], [1, 2], [2, -1], [2, 1]] n, m = len(nums), len(nums[0]) while queue: x, y = queue.pop() for dx, dy in d: x1, y1 = x + dx, y + dy if 0 <= x1 < n and 0 <= y1 < m and nums[x1][y1] != nums[x][y] and [x1, y1] not in visited: count += 1 visited.append([x1, y1]) queue.append([x1, y1]) return count if __name__ == '__main__': data = list(map(int, input().strip().split())) n, m = data[0], data[1] nums = [[0] * m for _ in range(n)] for i in range(n): data = list(input().strip()) for j in range(m): nums[i][j] = 0 if data[j] == 'b' else 1 data = list(map(int, input().strip().split())) x, y = data[0], data[1] res = f(nums, x - 1, y - 1) print(res)
#笔试题目##腾讯#