题目
n颗相同的糖果,分给m个人,每人至少一颗,问有多少种分法。
给定n和m,请返回方案数,保证n小于等于12,且m小于等于n。
测试样例:
10,3
返回:36
思路
Cm−1n−1 C n − 1 m − 1
代码
class Distribution:
def get_fact(self, n, num):
count = 0
res = 1
while count < num:
res *= n
n -= 1
count += 1
return res
def getWays(self, n, m):
# write code here
return self.get_fact(n - 1, m - 1) // self.get_fact(m - 1, m - 1)