LeetCode 118. Pascal's Triangle

来源:互联网 发布:mac里面xp升级win7 编辑:程序博客网 时间:2024/05/16 02:17

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

Pascal三角的规则是:每一个数等于头上左右两个数之和。

class Solution {public:    vector<vector<int>> generate(int numRows) {        vector<int> v;        vector<vector<int>> res;        if(numRows == 0) return res;        v.push_back(1);        res.push_back(v);        if(numRows == 1) return res;        v.push_back(1);        res.push_back(v);        if(numRows == 2) return res;        v.clear();        int i;        for(i = 3; i <= numRows; i ++){            v.push_back(1);            int j;            for(j = 1; j < i - 1; j ++){                v.push_back(res[i - 2][j - 1] + res[i - 2][j]);            }            v.push_back(1);            res.push_back(v);            v.clear();        }        return res;    }};


0 0