解决NOIP2007(数学)初级题中的把球放进盒子里的问题

解法一:递推公式S (x,y) = S (x-1,y) * y+s (x-1,y-1)。因为把X球放进Y盒,相当于先放X-1球,再放最后一个。最后一个有两种摆放方式:放在前面有球的盒子里或者独占一个盒子。前者对应的是S(x-1,y)*y(放进每个不同的盒子里是不同的方式,因为盒子里原来的球都不一样),后者对应的是S(x-1,y-1)。

方案二:7个球放入4个盒子,无非是2+2+2+1或者3+2+1或者4+1+1。所以分别求解,再加起来:c (7,1) * c (6,2) * c (4,2) * c (2,2)/p (3,3)+c (7 * 3) * c (4,2)+c (7,4)。