题解 | #数组分组#

数组分组

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

import re
import sys

n = int(input())

a = list(map(int, input().split()))

def check(list1,list2,left):
    if len(left)==0:
        sum1 = sum(list1)
        sum2 = sum(list2)
        if sum1==sum2:
            return True
        else:
            return False
    else:
        this = left[0]
        leftnext = left[1:]
        if this%5==0:
            list1 = list1+[this]
            res = check(list1,list2,leftnext)
        elif this%3==0:
            list2 = list2+[this]
            res = check(list1,list2,leftnext)
        else:
            list1new = list1+[this]
            res1 = check(list1new,list2,leftnext)
            list2new = list2+[this]
            res2 = check(list1,list2new,leftnext)

            res = res1 or res2
        
        return res

res = check([],[],left=a)
if res:
    print('true')
else:
    print('false')

全部评论

相关推荐

程序员花海_:实习和校招简历正确格式应该是教育背景+实习+项目经历+个人评价 其中项目经历注意要体现业务 实习经历里面的业务更是要自圆其说 简历模板尽可能保持干净整洁 不要太花哨的
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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