网易9.12笔试整除7题解

使用Python先排序再直接暴力搜索即可
def fin(a, h):
    i = 0
    if h == 0:
        return True
    while i < len(a) and a[i] <= h:
        tmp = a[i]
        a.pop(i)
        if fin(a, h - tmp):
            return True
        a[i:i] = [tmp]
        i += 1
    return False
a = input().split(' ')
sum = 0
for i in range(len(a)):
    a[i] = int(a[i])
    sum += a[i]
h = sum % 7

a.sort()

while h < sum:
    if fin(a, h):
        print(sum - h)
        break
    h += 7
if(h > sum):
    print(-1)


#笔试题目##网易#
全部评论
Js暴力就超时
1 回复 分享
发布于 2020-09-12 17:49
为什么要写 a[i:i]呢? 求教
点赞 回复 分享
发布于 2020-09-13 15:10
Fin的作用是什么呀?没太看懂
点赞 回复 分享
发布于 2020-09-12 23:35
可以有简单的算法。o(n)复杂度
点赞 回复 分享
发布于 2020-09-12 18:01
tql
点赞 回复 分享
发布于 2020-09-12 17:21

相关推荐

不愿透露姓名的神秘牛友
07-09 16:15
我应届生,去年10月份开始在这家公司实习,到今年10月份正好一年想(实习+试用期),在想要不要提前9月份就离职,这样好找工作些,但又差一个月满一年,又怕10月份国庆回来离职,容易错过了下半年的金九银十,到年底容易gap到年后
小破站_程序员YT:说这家公司不好吧,你干了快一年 说这家公司好吧,你刚毕业就想跑路说你不懂行情吧,你怕错过金九银十说 你懂行情吧,校招阶段在实习,毕业社招想换工作 哥们,我该怎么劝你留下来呢
应届生,你找到工作了吗
点赞 评论 收藏
分享
昨天 12:24
重庆大学 运营
坏消息:和好工作擦肩而过
给点吧求求了:怎么可能因为差几秒,估计就是简历更好看婉拒了
点赞 评论 收藏
分享
评论
1
4
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务