Given numRows, generate the first numRows of Pascal’s triangle.
For example, given numRows = 5,
Return
[
[1],
[1,1],
[1,2,1],
[1,3,3,1],
[1,4,6,4,1]
]
class Solution {
public:
vector<vector<int>> generate(int numRows) {
vector<vector<int>>a;
long long Triangle[40][40];
Triangle[1][1]=1;//初始化
Triangle[2][1]=1;
Triangle[2][2]=1;
if(numRows==0);
else if(numRows==1){
vector<int>c(Triangle[1]+1,Triangle[1]+2);
a.push_back(c);
}
else if(numRows==2){
vector<int>c(Triangle[1]+1,Triangle[1]+2);
a.push_back(c);
vector<int>d(Triangle[2]+1,Triangle[2]+3);
a.push_back(d);
}
else if(numRows>=3){
vector<int>f(Triangle[1]+1,Triangle[1]+2);
a.push_back(f);
vector<int>d(Triangle[2]+1,Triangle[2]+3);
a.push_back(d);
for(int i=3;i<=numRows;i++)//制作三角。
{
for(int j=1;j<=i;j++)
{
Triangle[i][j]=Triangle[i-1][j-1]+Triangle[i-1][j];
}
vector<int>c(Triangle[i]+1,Triangle[i]+i+1);
a.push_back(c);
}
}
return a;
}
};