杨辉三角 Time Limit:1000MS Memory Limit:65536KTotal Submit:61 Accepted:16 Description 打印杨辉三角 Input 每行一个数N(0<N<=20),最后一个数0 Output 对每个输入的N,输出N+1行的杨辉三角形.输出格式参考下面的Sample Output. 没有多余的空行和空格. Sample Input 1 3 0 Sample Output Case 1: 1 1 1 Case 2: 1 1 1 1 2 1 1 3 3 1 Hint 数据结构老师说要用队列做.. Source #include"iostream" #include"vector" using namespace std; vector<int>rect[21]; void v(int n) { int i,j; for(i=0;i<=n;i++) { for(j=0;j<rect[i].size();j++) cout<<rect[i][j]<<" "; cout<<endl; } } void init() { int i,j; for(i=0;i<=20;i++) { rect[i].push_back(1); if(i>=2) for(j=1;j<i;j++) rect[i].push_back(rect[i-1][j-1]+rect[i-1][j]); if(i>=1) rect[i].push_back(1); } } int main() { int i=0,j=0; int a[100]; cin>>a[0]; while(a[i]) { i++; cin>>a[i]; } init(); for(j=0;j<i;j++) { cout<<"Case "<<j+1<<":"<<endl; v(a[j]); } return 1; }

评论