n颗相同的糖果,分给m个人,每人至少一颗,问有多少种分法。
给定n和m,请返回方案数,保证n小于等于12,且m小于等于n。
测试样例:
输入:10,3
返回:36
class Distribution {
public:
int factorial(int n)
{
if(n == 0) return 1;
return n*factorial(n-1);
}
int permutation(int i, int j)
{
return factorial(i) / factorial(i - j);
}
int combination(int i, int j)
{
return permutation(i, j) / factorial(j);
}
int getWays(int n, int m) {
// write code here
return combination(n-1, m-1);
}
};
网友评论