给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。
输入: 5
输出:
[
[1],
[1,1],
[1,2,1],
[1,3,3,1],
[1,4,6,4,1]
]
Code
class Solution {
public:
vector<vector<int>> generate(int numRows) {
vector<vector<int>> _vec;
_vec.resize(numRows);
for(int i = 0; i < _vec.size(); ++i){
_vec[i].resize(i + 1);
}
for(int i = 0; i < _vec.size(); ++i){
_vec[i][0] = 1;
_vec[i][_vec[i].size() - 1] = 1;
}
for(int i = 2; i < _vec.size(); ++i){
for(int j = 1; j < _vec[i].size() - 1; ++j){
_vec[i][j] = _vec[i-1][j-1] + _vec[i-1][j];
}
}
return _vec;
}
};
测试结果: