pascals-triangle

来源:互联网 发布:java 返回值类 怎么用 编辑:程序博客网 时间:2024/06/18 05:05

题目:

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>> res;        if(numRows==0)            return res;        vector<int> v(1,1);        res.push_back(v);        if(numRows==1)            return res;        v.push_back(1);        res.push_back(v);        if(numRows==2)            return res;        int n=numRows-2;        v.clear();        while(n)        {            v.push_back(1);            int len=res.size();            for(int i=0;i<res[len-1].size()-1;i++)                v.push_back(res[len-1][i]+res[len-1][i+1]);            v.push_back(1);            res.push_back(v);            v.clear();            n--;        }        return res;    }};