1. 程式人生 > >leetcode118楊輝三角(C++)

leetcode118楊輝三角(C++)

給定一個非負整數 numRows,生成楊輝三角的前 numRows 行。 在這裡插入圖片描述 示例:

輸入: 5
輸出:
[
     [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>>vv;
        vv.resize(numRows);
        for(size_t i=1;i<=numRows;i++)
        {
            vv[i-1].resize(i,0);
            vv[i-1][0]=1;//楊輝三角每行第一個和最後一個都為一
            vv[i-1][i-1]=1;
        }
        for(size_t i=0;i<numRows;i++)
        {
            for(size_t j=0;j<vv[i].size();j++)
            {
                if(vv[i][j]==0)
                {
                    vv[i][j] = vv[i-1][j-1] + vv[i-1][j];
                }
            }
        }
        return vv;
    }
};