题解 | #神奇的口袋#

神奇的口袋

https://www.nowcoder.com/practice/9aaea0b82623466a8b29a9f1a00b5d35

# 3. 神奇口袋
# dfs解决 深度优先遍历
maxn = 21
a = [0] * 21
vis = [0] * 21
global res


def dfs(now, j):
    global res
    for i in range(j, n):
        cal = now + a[i]
        if cal > 40:
            dfs(now, i + 1)
        elif cal < 40:
            dfs(cal, i + 1)
        else:
            res += 1


n = int(input())
res = 0
for i in range(n):
    a[i] = int(input())
dfs(0, 0)
print(res)

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务