题解 | 数组分组
数组分组
https://www.nowcoder.com/practice/9af744a3517440508dbeb297020aca86
num = int(input()) arr5 = [] arr3 =[] arrqita=[] arr = list(map(int ,input().split())) def f(arrqita,cha): if len(arrqita) == 0 : if cha ==0: return True else: return False else: return f(arrqita[1:],arrqita[0] +cha) or f(arrqita[1:],cha -arrqita[0] ) for i in arr: if i % 5 == 0 : arr5.append(i) elif i % 3 ==0: arr3.append(i) else: arrqita.append(i) arr5_sum= sum(arr5) arr3_sum= sum(arr3) cha =arr5_sum - arr3_sum # print(len(arrqita),cha) if f(arrqita,cha): print("true") else: print('false') 递归最重要的是搞清楚终止条件