算法导论 · 动态规划 · 二次项系数计算

  • 算法说明
    递推公式如下
    C(n,k)=C(n-1,k-1)+C(n-1,k),n>k>0
    C(n,0)=C(n,n)=1
  • 源代码
#include <cstdio>
#include <cstring>

#define maxn 100 + 1
#define mincc(a, b) (a) > (b) ? (b) : (a)

int c[maxn][maxn];
int n, k;

int main() {
	scanf("%d%d", &n, &k);

	for(int i = 0; i <= n; i++) {
		int temp = mincc(i, k);
		for(int j = 0; j <= temp; j++) {
			if(j == 0 || j == i) c[i][j] = 1;
			else c[i][j] = c[i-1][j-1] + c[i-1][j];
		}
	}

	printf("%d", c[n][k]);
	return 0;
}
  • 运行结果
    在这里插入图片描述
发布了77 篇原创文章 · 获赞 40 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/y_dd6011/article/details/97433244