题解 | #牛牛的背包问题#

牛牛的背包问题

https://www.nowcoder.com/practice/bf877f837467488692be703735db84e6



def solve(volumes,n,w):
    if w==0:
        return 1
    if w<0:
        return 0
    if sum(volumes)<=w:
        return 2**n
    return solve(volumes[1:],n-1,w)+solve(volumes[1:],n-1,w-volumes[0])

import sys
if __name__=="__main__":
    line1Slice=input().split(" ")
    n,w=int(line1Slice[0]),int(line1Slice[1])
    line2Slice=input().split(" ")
    volumes=[int(i) for i in line2Slice]
    print(solve(volumes,n,w))



全部评论

相关推荐

04-02 16:49
门头沟学院 Java
_bloodstream_:我也面了科大讯飞,主管面的时候听说急招人优先考虑能尽快实习的,我说忙毕设,后面就一直没消息了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务