以下是一个 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]

Python 算法:打印集合中编号为 5 倍数的非空子集

原文地址: https://www.cveoy.top/t/topic/eTiL 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录