首页 > 其他分享 >LeetCode刷题(52)~杨辉三角【看似简单???】

LeetCode刷题(52)~杨辉三角【看似简单???】

时间:2023-01-12 14:44:15浏览次数:40  
标签:val int 52 numRows vector 杨辉三角 LeetCode 刷题

题目描述

给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。

在杨辉三角中,每个数是它左上方和右上方的数的和。

示例:

输入: 5
输出:
[
     [1],
    [1,1],
   [1,2,1],
  [1,3,3,1],
 [1,4,6,4,1]
]

解答

提交代码

 vector<vector<int>> generate(int numRows) {
        vector<vector<int>> res;
        for(int i=1; i<=numRows; i++){
            vector<int> val(i);
            val[i-1] = 1;
            val[0] = 1;
            if(i <= 2){
                res.push_back(val);
                continue;
            }
            for(int j=1; j<i-1; j++){
                val[j] = res[i-2][j-1] + res[i-2][j];
            }
            res.push_back(val);
        }
        return res;
    }

运行结果
LeetCode刷题(52)~杨辉三角【看似简单???】_i++

题目来源

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/pascals-triangle

标签:val,int,52,numRows,vector,杨辉三角,LeetCode,刷题
From: https://blog.51cto.com/u_15939722/6004141

相关文章