老哥,这是哪家公司的面试题吗 说点自己的想法吧,首先需要判定a和b的大小关系: 1)a = b,此时a种类型一种一个,放入b(a)个盒子,相当于全排列A(b)(b),就是 b!; 2)a > b,从a种类型选出b种类型,一种一个,先组合再排列, a!/(a-b)! ; 3)a < b,b里挑出a个,每种类型放一个,剩余的b-a个盒子,随便放,也是先组合再排列,第一阶段是b!/(b-a)!,第二阶段(b-a)^a,结果是(b-a)^a * b!/(b-a)!。