|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 糖逗 于 2020-6-7 13:24 编辑
题目描述:
- 给定一个非负索引 k,其中 k ≤ 33,返回杨辉三角的第 k 行。
- 在杨辉三角中,每个数是它左上方和右上方的数的和。
- 示例:
- 输入: 3
- 输出: [1,3,3,1]
复制代码
- class Solution {
- public:
- void dfs(vector<int>& res, vector<int>& pre, int rowIndex, int cur){
- if(cur >= rowIndex){
- res = pre;
- return;
- }
- int left = 0, right = 1;
- res.push_back(1);
- for(int i = right; i < pre.size(); i++){
- res.push_back(pre[left] + pre[right]);
- left ++;
- right++;
- }
- res.push_back(1);
- pre = res;
- res = {};
- dfs(res, pre, rowIndex, cur+ 1);
- }
- vector<int> getRow(int rowIndex) {
- if(rowIndex == 0) return {1};
- if(rowIndex == 1) return {1, 1};
- vector<int> res;
- vector<int> pre = {1, 1};
- dfs(res, pre, rowIndex, 1);
- return res;
- }
- };
复制代码 |
|