给出一个集合请打印编号为5倍数的所有非空子集从0开始编号。构建子集的方法请参考书本24页。输入格式输入一个集合列表。输出格式编号为5倍数的所有非空子集。输入样例在这里给出一组输入。例如:5 -2 4 2输出样例在这里给出相应的输出。例如:-2 25 45 -2 4 2
def subsets(nums):
n = len(nums)
res = []
for i in range(1, 2**n):
subset = []
for j in range(n):
if (i >> j) & 1:
subset.append(nums[j])
if len(subset) != 0 and sum(subset) % 5 == 0:
res.append(subset)
return res
nums = [5, -2, 4, 2]
subsets_list = subsets(nums)
for subset in subsets_list:
print(subset)
原文地址: https://www.cveoy.top/t/topic/jdQn 著作权归作者所有。请勿转载和采集!