首页 > 字节8.16笔试最后一题的一点思路,不知道问题出在哪里
头像
我可能是有什么问题
编辑于 2020-08-16 14:45
+ 关注

字节8.16笔试最后一题的一点思路,不知道问题出在哪里

最后一题我想的是用类似bfs的方法做,但只能通过20%,不知道思路错在哪里,求大佬解惑:  
def maxres(nums,m):
    reses=set()              #储存前i个数组合,可以产生的所有余数,使用set去重
    reses.add(nums[0]%m)     #首先放入第一个数的余数
    for i in range(1,len(nums)):
        tmp=list(reses)      #用一个tmp表示 前i-1个数任意组合 可以得到的所有余数
        for res in tmp:
            reses.add((res+nums[i])%m)    #所有余数与当前的num[i]结合,将产生的新余数放入
    return max(reses)        #返回所有余数中的最大值

if __name__=='__main__':
    nums = [5, 7, 6, 1, 2, 3, 5, 7, 9, 3,8,16,2,9]
    m = 50
    print(maxres(nums,m))



全部评论

(1) 回帖
加载中...
话题 回帖

相关热帖

近期热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐