我在建模特定问题的组合分析时遇到困难,我想隔离某种通用形式,有人可以帮助我吗?
这个问题很容易理解,它是一个问题的概括:“使用'n'个项目可以形成多少个排列,例如:“ 1 2 3 4 5”,应该是5!“ < / p>
区别在于,对于每个地方,我只能使用一组特定的项目,而无需重复某个特定的项目,例如:
[1, 2, 3] # I can only use these for first place
[2, 3, 4] # I can only use these for second place
[3, 4, 5] # I can only use these for third place
有效安排的示例:(1、2、3)或(3、2、5)
无效安排的示例:(2,2,3)
我想为这个问题找到一些计算方法,我已经使用动态编程解决了同样的问题,但是我相信可以隔离一些数学方法..
输入由 x 和 y 定义, x 表示每个组中的数字数量, y 表示组数。第一组从 [1,.. x] 开始,第二组从 [1 + j,.... x + j] 开始,其中j是从0 ...(y-1)开始的组,例如:
x = 3, y = 4
# represents the count of:
[1, 2, 3]
[2, 3, 4]
[3, 4, 5]
[4, 5, 6]
x = 5, y = 3
# represents the count of:
[1, 2, 3, 4, 5]
[2, 3, 4, 5, 6]
[3, 4, 5, 6, 7]
# And for this case, the valid numbers is (1, 2), (1, 3), (1, 4), (2,
# 3), (2, 4), (3, 2), (3, 4), so the answer is 7.
x=2, y=2
[1, 2, 3]
[2, 3, 4]
有人可以帮我吗?