假设我有一个包含10个数字的多重集合,例如
例如:
如果
如果
S = { 1, 1, 2, 2, 2, 3, 3, 3, 8, 9 }
。除了暴力方法外,是否有其他方法可以找到S
元素的不同排列数,使得当将排列视为一个十位数时,它可被特定数字n
整除?n
将在1
到10000
范围内。例如:
如果
S = { 1, 2, 3, 4, 6, 1, 2, 3, 4, 6 }
且n = 10
,则结果为0
(因为这些10个数字的任何排列都不会得到可被10整除的数字)。如果
S = { 1, 1, 3, 3, 5, 5, 7, 7, 9, 2}
且n = 2
,则结果为9! / 2^4
(因为我们必须在末尾放置2
,有9!
种方法可以对其他元素进行排列,但有四对相同的元素)。