Pascal's Triangle

Tags : array, leetcode, cpp, easy

Given an integer numRows, return the first numRows of Pascal’s triangle.

In Pascal’s triangle, each number is the sum of the two numbers directly above it as shown:

Examples #

Example 1:

Input: numRows = 5
Output: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]]

Example 2:

Input: numRows = 1
Output: [[1]]

Constraints #

Solution #

class Solution {
public:
    vector<vector<int>> generate(int numRows) {
        vector<vector<int>> mnk(numRows);
        int i=0,j;
        for(; i < numRows; i++){
            mnk[i].resize(i+1);
            mnk[i][0]=mnk[i][i]=1;
            j = 1;
            while(j<i){
                mnk[i][j]= mnk[i-1][j-1] + mnk[i-1][j];
                j++;
            }
        }
        return mnk;
    }
};