杨辉三角形

孤者浪人 提交于 2020-02-29 02:52:59

问题描述

杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数。它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加。下面给出了杨辉三角形的前4行: 
1
1 1
1 2 1
1 3 3 1
给出n,输出它的前n行。

输入格式

输入包含一个数n。

4

输出格式

输出杨辉三角形的前n行。每一行从这一行的第一个数开始依次输出,中间使用一个空格分隔。请不要在前面输出多余的空格。

1
1 1
1 2 1
1 3 3 1

数据规模与约定

1 <= n <= 34。

代码

#include<iostream> 
using namespace std;
int main()
{
	int n,m;
	cin>>n;
	int a[50],b[50];
	for(int i=1;i<=n;i++)
	{
		for(int j=0;j<i;j++)
		{
			if(j==0 || j==i-1)
			{
				printf("1 ");
				b[j]=1;
			}
			else
			{
				b[j]=a[j]+a[j-1];
				printf("%d ",b[j]);
			}			
		}
		for(int j=0;j<i;j++)
		{
			a[j] = b[j];		
		}
		cout<<endl;
	} 
	return 0;
}
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!