要从第二行开始输出 测试用例有点坑爹 第一行的1不用输出。
杨辉三角形
http://www.nowcoder.com/questionTerminal/ef7f264886a14fdf8a6ed3ac008a23c8
//递归输出 //这种方法简单 但是重复计算很多 时间复杂度比较大 #include<iostream> #include<cstdio> using namespace std; int func(int i,int j){ if(j==1||j==i) return 1; else return func(i-1,j)+func(i-1,j-1); } int main(){ int n; while(cin>>n){ for(int i=2;i<=n;++i){//从第二行开始输出,测试用例很坑爹。正常应该改成1 for(int j=1;j<=i;++j){ cout<<func(i,j); if(i!=j) cout<<" "; } cout<<endl; } } }