P5732 深基5.习7杨辉三角

Posted Kunkun只喝怡宝

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了P5732 深基5.习7杨辉三角相关的知识,希望对你有一定的参考价值。

题目描述

给出 n(n≤20),输出杨辉三角的前 n 行。

如果你不知道什么是杨辉三角,可以观察样例找找规律。

代码

杨辉三角形的每一行其实就是一组组合数,就只需要把每个组合数算出然后依次输出就好了。

#include<bits/stdc++.h>

using namespace std;

int C(int n,int m);
void H(int x);
int main(){
	int n,i;
	cin>>n; 
	for(i=0;i<n;i++)
		H(i);
	return 0;
}
void H(int x){
	int i;
	for(i=0;i<=x;i++){
		if(i==0) cout<<C(x,i);
		else cout<<" "<<C(x,i);
	}
	cout<<endl;
}
int C(int n,int m){
	int i;
	long J=1,K=1;
	m=m<(n-m)?m:(n-m);
	if(m==0) return 1;
	for(i=1;i<=m;i++)
		J*=i;
	for(i=0;i<m;i++)
		K*=(n-i);
	return K/J;
}

以上是关于P5732 深基5.习7杨辉三角的主要内容,如果未能解决你的问题,请参考以下文章

入门1顺序结构

入门1顺序结构

入门1顺序结构

P5744 深基7.习9培训

P5731 深基5.习6蛇形方阵

P5743 深基7.习8猴子吃桃