组合分析

时间:2018-10-17 16:28:52

标签: math combinations permutation combinatorics factorial

我在建模特定问题的组合分析时遇到困难,我想隔离某种通用形式,有人可以帮助我吗?

这个问题很容易理解,它是一个问题的概括:“使用'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]

有人可以帮我吗?

0 个答案:

没有答案