假设你有3 stocks A, B and C
个项目,每个项目的范围是1-100。如何才能了解范围内的所有可能变化?
示例:
A - 0 0 0 1 2 1 1
B - 0 1 2 ... 0 0 ... 1 2
C - 100 99 98 99 98 98 97
努力寻找可能的投资组合分配。
n
寻找高效方式来获取所有可能结果的矩阵。
Sum应该加起来为100,并涵盖OpenGLWidget
元素的所有可能变体。
答案 0 :(得分:2)
我是怎么做到的:
>>> import itertools
>>> cp = itertools.product(range(101),repeat=3)
>>> portfolios = list(p for p in cp if sum(p)==100)
但这会产生不必要的组合。请参阅有关整数分区的讨论以避免这种情况。例如,Elegant Python code for Integer Partitioning