腾讯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)

#笔试题目##腾讯#
全部评论
这一题我用Python 写一定会超时(40%),牛客对Python的支持不好,但是C++能过。
1 回复 分享
发布于 2021-09-06 23:39
同python,只过40%
点赞 回复 分享
发布于 2021-09-07 10:54

相关推荐

07-15 11:35
门头沟学院 Java
心里踏实多了,可以安心准备论文了
看不见我ffgh:牛哇佬,要不要来试一试pdd,部门氛围很好
京东开奖153人在聊
点赞 评论 收藏
分享
小鹏、大疆、米哈游、MinMax小鹏上午投的下午就约面,进度未免也太快了
蛇年行大运fff:哥们 盗贴有意思吗,我发xhs上的给你搬过来了😅😅😅
点赞 评论 收藏
分享
06-04 09:27
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务