Given an index k, return the kth row of the Pascal's triangle.
For example, given k = 3,
Return [1,3,3,1]
.
思路:
首先计算每一行的值,最后返回要求的行。
特别注意:
给出的例子是第三行,返回【1,3,3,1】。则意味着行数应从第0行开始。这一点最开始没注意,花了很多时间。
class Solution {
public:
vector<int> getRow(int rowIndex) {
vector<vector<int>> fin;
for (int i = 0; i <= rowIndex ; ++i)
{
vector<int> temp;
if (i > 1)
{
temp.push_back(1);
for (int j = 1; j < i; ++j)
temp.push_back(fin[i-1][j-1] + fin[i-1][j]);
temp.push_back(1);
}
else
for (int j = 0; j <= i; j++)
temp.push_back(1);
fin.push_back(temp);
}
return fin[rowIndex];
}
};