[leetcode] Pascal's Triangle

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) {
        // Start typing your C/C++ solution below
        // DO NOT write int main() function
        vector<vector<int> > ret;
        vector<int> cur(1,1);
        if(numRows==0)
            return ret;
        ret.push_back(cur);
        for(int i=1 ; i<numRows ; i++){
            vector<int> temp;
            temp.push_back(1);
            for(int j=1 ; j<cur.size() ; j++)
                temp.push_back(cur[j-1]+cur[j]);
            temp.push_back(1);
            cur=temp;
            ret.push_back(temp);
        }
        return ret;
    }
};


你可能感兴趣的:([leetcode] Pascal's Triangle)