您的位置:首页 > 其它

Pascal's Triangle (leetcode)

2014-11-08 17:47 295 查看
题目:

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]
]

题目来源:https://oj.leetcode.com/problems/pascals-triangle/

解题思路:下一行中的数除了头尾是1外,其他数均是上一行对应的两个数的和。

#include<iostream>
#include<vector>
using namespace std;

vector<vector<int> > generate(int numRows)
{
vector<vector<int> >results;
if(numRows==0)
return results;
results.push_back(vector<int>(1,1));
for(int i=0;i<numRows-1;i++)
{
vector<int> result(1,1);
for(int j=0;j<results[i].size()-1;j++)
result.push_back(results[i][j]+results[i][j+1]);
result.push_back(1);
results.push_back(result);
}
return results;
}

int main()
{
vector<vector<int> >results=generate(4);

system("pause");
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: