您当前的位置: 首页 >  华为

TechGuide

暂无认证

  • 4浏览

    0关注

    176博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

华为秋招两道编程题(2021-08-04)

TechGuide 发布时间:2021-08-08 16:28:33 ,浏览量:4

恭喜发现宝藏!微信搜索公众号【TechGuide】关注更多新鲜好文和互联网大厂的笔经面经。 作者@TechGuide【全网同名】 点赞再看,养成习惯,您动动手指对原创作者意义非凡🤝

文章目录
  • 第一道:bfs(100%)
  • 第二道: 动态规划(100%)

第一道:bfs(100%)
W, L = map(int, raw_input().strip().split(' ')) 
arr = []
nL = L 
while nL:
    row = map(int, raw_input().strip().split(' '))
    arr.append(row) 
    nL -= 1 
mask = [[0]* W for _ in range(L)]
res = 0 
for i in range(L):
    for j in range(W):
        if mask[i][j] == 0 and arr[i][j]: 
            volume = 0 
            queue = [(i,j)]
            mask[i][j] = 1 
            while queue:
                node = queue.pop(0)
                volume += arr[node[0]][node[1]]
                for d in [[-1,0],[1,0],[0,-1],[0,1]]:
                    nr, nc = node[0] + d[0], node[1] + d[1]
                    if nr > -1 and nr  - 1 and nc             
关注
打赏
1665329535
查看更多评论
0.0386s