阿布喜欢吃梨,有一天妈妈买了一筐梨子。小伙伴们来做客,他想和小伙伴们一起分享。现在他要把m个梨放到n个盘子里面 (我们允许有的盘子为空),你能告诉阿布有多少种分法吗?(请注意,如果有三个盘子,我们将5,1,1和1,1,5,视为同一种分法)
本题要求用递归函数实现
本题要求实现1个自定义函数。
函数接口定义:
//用递归算法求m个梨放在n个盘子里的方法总数
int f(int m,int n);
裁判测试程序样例:
第一行是一个整数t,代表有t组样例。
第二行有两个整数M和N代表有M个梨和N个盘子。
输出有多少种方法。
1
7 3
8
m个梨放在n个盘子,允许有盘子空,按层次可以划分成如下的子问题 1) 在n个盘子中不空的放。显然此时方法种数相当于在n个盘子里面放(m - n)个苹果 2) n个盘子中至少有一个空,即盘子规模小1的子问题。