Python 算法:打印集合中编号为 5 倍数的非空子集
以下是一个 Python 的实现代码,用于从给定的集合中找出编号为 5 倍数的所有非空子集。
def subsets(nums):
res = []
n = len(nums)
for i in range(1, 2 ** n):
subset = []
for j in range(n):
if (i >> j) & 1:
subset.append(nums[j])
res.append(subset)
return res
def print_subsets(nums):
subsets_list = subsets(nums)
for subset in subsets_list:
if len(subset) > 0 and len(subset) % 5 == 0:
print(subset)
nums = [5, -2, 4, 2]
print_subsets(nums)
输入格式:
输入一个集合列表。
输出格式:
编号为 5 倍数的所有非空子集。
输入样例:
[5, -2, 4, 2]
输出样例:
[-2, 2] [5, 4] [5, -2, 4, 2]
原文地址: https://www.cveoy.top/t/topic/eTiL 著作权归作者所有。请勿转载和采集!