在下面的代码中,如果输出序列大于3个值,我就得不到结果. 下面的代码不返回任何内容,有没有办法让下面的代码返回7175.90、14259.90、11625.47和3764.81的正确答案?
import itertools
from decimal import Decimal
# Original list of numbers (including decimals)
numbers = [7175.90, 14259.90, 11625.47, 3764.81, 1995.27, 542.23, 2038.32, 4048.83, 490.40, 1279.00, 3248.90]
# Convert the original numbers to Decimal format
#numbers = [Decimal(num) for num in original_numbers]
target_sum = 36826.08
# Generate all combinations of the numbers
result = [seq for i in range(len(numbers), 0, -1) for seq in itertools.combinations(numbers, i) if sum(seq) == target_sum]
print(result)