将一堆小球(数量不小于2)分为两堆,记录两堆所包含的小球数之积,将这种操作称为“分堆”,将得到的积称为“分堆积”.将一堆包含n个小球的小球进行一次“分堆”,对应的“分堆积”设为p1;从得到的两堆小球中选出一堆进行“分堆”,对应的“分堆积”设为p2;再从得到的三堆小球中选出一堆进行“分堆”,对应的“分堆积”设为p3;依次进行下去,直到最后得到n堆小球(每堆的小球数量均为1)为止.设S(n)=p1+p2+⋯+pn−1,证明:S(n)是一个与分堆的具体过程无关的定值.
方法一
每次都分出只包含一个小球的堆,那么有pk=n−k,其中k=1,2,⋯,n−1.于是n−1∑k=1pk=(n−1)+(n−2)+⋯+1=12n(n−1).
接下来用数学归纳法证明无论采用何种分法,均有S(n)=12n(n−1),其中n=2,3,⋯.
当n=2时,显然有S(2)=1,命题成立;
假设命题对n⩽k(k⩾2,k∈N)都成立,则当n=k+1时,记S(1)=0,假设经过第1次分堆后两堆的小球数分别为p,n−p,则S(n)=p(n−p)+S(p)+S(n−p)=p(n−p)+12p(p−1)+12(n−p)(n−p−1)=12(2pn−2p2+p2−p+n2−2pn−n+p+p2)=12n(n−1),因此命题也成立.
综上所述,无论采用何种分法,均有S(n)=12n(n−1),其中n=2,3,⋯.
方法二
设第一次分堆将n个小球分成a1和a2两个部分,那么n2=(a1+a2)2=a21+a22+2a1a2,可以将这个等式看作n2“分裂”为了a21和a22,于此同时产生“余项”2a1a2,也即2p1.随着“分裂”的持续进行直至最终的n个12,所产生的“余项”之和为2p1+2p2+⋯2pn−1=2S(n),因此我们有n2=12+12+⋯+12⏟n+2S(n),即S(n)=12n(n−1).
如图,所有矩形的面积之和即S(n).
方法三
设Tn={A1,A2,⋯,An}为n元集合,将第一次分堆视为对集合Tn作分划,设分划的结果为Bs,Bt,其中t+s=n,则满足x∈Bs且y∈Bt的二元集合{x,y}的数目即p1,类似地持续进行分划,直到所有集合均为单元素集为止,则所有的二元集合{x,y}的数目即S(n),且这些二元集合的数目恰好为集合Tn的二元子集的个数,因此S(n)=C2n=12n(n−1).
这个方法也有一个优美的几何解释:
如图,分步将n阶(图中以n=10为例)完全图中的线逐步擦除即得.
注 整理自程汉波老师的博客(点击这里).