题解 | 杨辉三角
杨辉三角
https://www.nowcoder.com/practice/8c6984f3dc664ef0a305c24e1473729e
#include <iostream> #include <vector> using namespace std; int main() { int n; cin >> n; vector<vector<int>> ret; for(int i = 1; i <= n; i++) { vector<int> tmp(i, 1); ret.push_back(tmp); } for(int i = 2; i < n; i++) { for(int j = 1; j < ret[i].size() - 1; j++) { ret[i][j] = ret[i - 1][j - 1] + ret[i - 1][j]; } } for(int i = 0; i < n; ++i) { for(int j = 0; j < ret[i].size(); j++) cout << ret[i][j] << " "; cout << endl; } return 0; }
傻瓜版杨辉三角:
优点:思路清晰,很容易想到;
缺点:时间复杂度比较高,为 O(N^2)