zgjja


私信TA

用户名:zgjja

访问量:12024

签 名:

X_X

等  级
排  名 147
经  验 7313
参赛次数 0
文章发表 71
年  龄 0
在职情况 学生
学  校
专  业 X_X

  自我简介:

解题思路:

注意事项:

参考代码:

def dfs(x=0, y=0, add_all=0):
    global map_, visited, around, sum_, res, end_flag
    if add_all == sum_ // 2:
        end_flag = 1
        return 
    if not visited[x][y]:
        visited[x][y] = True        
        add_all += map_[x][y]
        res += 1
        for i in around:
            if 0 <= i[0] + x < n and 0 <= i[1] + y < m:
                dfs(i[0] + x, i[1] + y, add_all)
            if end_flag:
                return
        visited[x][y] = False
        res -= 1
        add_all -= map_[x][y]


m, n = map(int, input().split())
map_ = [list(map(int, input().split()))[:m] for _ in range(n)]
visited = [[False for _ in range(m)] for _ in range(n)]
around = [[1, 0], [0, 1], [-1, 0], [0, -1]]
sum_, res, end_flag = sum(sum(i) for i in map_), 0, 0
dfs()
print(res)


 

0.0分

1 人评分

新上线《蓝桥杯辅导》课程,近五年的蓝桥杯省赛与国赛真题都有,从读题开始理解题意、梳理思路、实现代码再提交评测全过程,可有效提升获奖比例甚至进国赛!课程介绍、试听请猛击这里

  评论区

  • «
  • »