组合数问题
从n个不同的物品中选取m个,有多少种不同的选择方法
杨辉三角及其含义
第i行第j列表示,从i个不同的物品中选j个,有多少种不同的方法(行和列的标号从0开始)。
当高为5时(下标最多取到 i = 4, j = 4), 杨辉三角为:
思路
假设我们现在需要求从i个物品中取j个的方案数 f[i][j]。 考虑1号物品,那么有两种可能:选1号物品, 或者 不选1号物品:
1 . 选1号物品:由于1号物品是一定要选进来的,因此我们还剩i-1个物品,我们要从中选出j-1个物品,方案数是 f [ i − 1 ] [ j − 1 ] f[i-1][j-1] f[i−1][j−1]。
2 . 不选1号物品:我们还剩i-1个物品,但是1号一定不选,因此我们还要从剩下的i-1个物品中选出j个物品,方案数是 f [ i − 1 ] [ j ] f[i-1][j] f[i−