Pascal's Triangle
Q: 杨辉三角
A:
1. 左右两端的数都为1
2. 每个数字等于上一行的左右两个数字之和。
3. 每行数字左右对称,由1开始逐渐变大。
4. 第n行的数字有n项。
vector<vector<int> > generate(int numRows) {
// Start typing your C/C++ solution below
// DO NOT write int main() function
vector<vector<int> > result;
if(numRows<=0)
return result;
vector<int> set;
set.push_back(1);
result.push_back(set);
for(int i=1;i<numRows;i++)
{
set.clear();
for(int j=0;j<=i;j++)
{
int num1,num2;
num1 = ((j==0)? 0: result[i-1][j-1]);
num2 = ((j==i)? 0: result[i-1][j]);
set.push_back(num1+num2);
}
result.push_back(set);
}
return result;
}
浙公网安备 33010602011771号