西游记之三角形
Problem:12
Time Limit:1000ms
Memory Limit:65536K
Description
话说唐僧去西天取经,途中由于饥渴难耐,不得不让齐天大圣去帮他化斋。齐天大圣腾空看见附近有一户人家,便飞身前往。走近一看原来住着NGB兄弟,这天正好是NGB*魔在家看守。齐天大圣早就听闻NGB*魔有个怪脾气,如果别人有求于他,一定要先回答一道数学问题(当然魔会根据求助的难易程度选择问题的难易程度),如果能回答出来他将竭尽全力帮助他,要是回答不出,一切免谈。为了得到斋饭,齐天大圣不得不回答问题。 NGB*魔让齐天大圣输出杨辉三角,这可难到了齐天大圣了,所以他请你帮他搞定这个简单的问题。 杨辉三角的定义就不再描述了,你可以参考以下的图形 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1
Input
输入数据包含多个测试实例,每个测试实例的输入只包含一个正整数n(1<=n<=30),表示将要输出的杨辉三角的层数。输入0的时候结束。
Output
对应于每一个输入,请输出相应层数的杨辉三角,每一层的整数之间用一个空格隔开,每一个杨辉三角后面加一个空行(回车“ ”)。0不处理。
Sample Input
2 3 0
Sample Output
1 1 1 1 1 1 1 2 1<br /><span id="_xhe_temp" width="0" height="0"><br /></span>#include <iostream> #include <cstdio> #include <cstring> #include <cmath> #include <algorithm> using namespace std; int main() { int a[30][30]={0}; int i,j,n; while(scanf("%d",&n)!=-1) { if(n==0) break; for(i=0;i<n;i++) { for(j=0;j<i+1;j++) { if(j==0||j==i) { a[i][j]=1; } else{a[i][j]=a[i-1][j-1]+a[i-1][j];} printf("%d ",a[i][j]); } printf("\n"); } } return 0; }