作业帮 > 数学 > 作业

下列的程序计算了m个A,n个B可以组合成多少个不同排列的问题.请完善它.int f(int m,int n) { if(

来源:学生作业帮 编辑:神马作文网作业帮 分类:数学作业 时间:2024/11/17 12:17:01
下列的程序计算了m个A,n个B可以组合成多少个不同排列的问题.请完善它.int f(int m,int n) { if(m==0
f(m-1,n-1)*(m+n)*(m+n-1)/(m*n); 理解不了.谁能解释下意思
下列的程序计算了m个A,n个B可以组合成多少个不同排列的问题.请完善它.int f(int m,int n) { if(
因为m个A n个B的排列一共有(m+n)!/(m!*n!)
而m-1个A n-1个B的排列一共有(m+n-2)!/((m-1)!*(n-1)!)
(m+n)!/(m!*n!)/(m+n-2)!/((m-1)!*(n-1)!)=(m+n)*(m+n-1)/(m*n)
所以m个A n个B的排列数=m-1个A n-1个B的排列数*(m+n)*(m+n-1)/(m*n)