可重排列

问题描述:将x个相同的物品分成y坨(允许空坨,考虑坨的顺序),方案总数为C(x + y - 1, x)。

百度了一下发现这个东西叫可重排列。现在会两种证明方法。

(1)相当于把x个物品和y - 1个隔板这x + y - 1个元素随机排列,那么排完后每一种排列都实际上都是一种分配方案,所以答案为C(x + y - 1, y - 1)。

(2)相当于求a1 + a2 + ... + ay = x有多少组解(ai >= 0)。另bi = ai + 1, ci = sum(bj, 1, i)(即bj从第一项到第i项的和)。

等价于b1 + b2 + ... + by = x + y,因c1 < c2 < ... < cy = x + y,故考虑ci的取法,(因cy已知)便是在x + y - 1个数中取出y - 1个不同数的方案。亦即C(x + y - 1, y - 1)。

update:

(3)发现是一个很简单的高中排列组合问题,把总数加y,重新定义成每一坨至少一个,于是隔板法C(x + y - 1, y - 1)。

原文地址:https://www.cnblogs.com/BIGTOM/p/7896029.html