---
# System prepended metadata

title: 'LeetCode #118 [Pascal’s Triangle](https://leetcode.com/problems/pascals-triangle)'
tags: [LeetCode, Easy]

---

###### tags: `LeetCode` `Easy`
# LeetCode #118 [Pascal’s Triangle](https://leetcode.com/problems/pascals-triangle)
### (Easy)
給定一個非負整數 numRows，生成「帕斯卡三角」的前 numRows 行。
在「帕斯卡三角」中，每個數是它左上方和右上方的數的和。
註: 1≤ numRows≤30


---
由於numRows大於等於1, 初始化一回傳值vector<vector<int>> ans, 並放入{1}, 接下來每層頭尾放入1, 其餘 ans[i][j] = ans[i-1][j-1]+ans[i-1][j]。


---
```
class Solution {
public:
    vector<vector<int>> generate(int numRows) {
        vector<vector<int>> ans;
        ans.push_back({1});
        for(int i=1;i<numRows;i++){
            vector<int> p;
            p.push_back(1);
            for(int j=1;j<i;j++){
                p.push_back(ans[i-1][j-1]+ans[i-1][j]);
            }
            p.push_back(1);
            ans.push_back(p);
        }
        return ans;
    }
};
```