auto-generated entry for Pascal's Triangle. the solution files are available below.
solution files
- C++
pascals-triangle/synced-solution.cpp - Python
pascals-triangle/synced-solution.py - TypeScript
pascals-triangle/synced-solution.ts
Collected C++, Python, TypeScript solutions for pascal's triangle. Add a dedicated write-up later if you want deeper notes.
auto-generated entry for Pascal's Triangle. the solution files are available below.
pascals-triangle/synced-solution.cpppascals-triangle/synced-solution.pypascals-triangle/synced-solution.tsclass Solution:
def generate(self, numRows: int) -> List[List[int]]:
if numRows == class="syntax-number">0:
return []
result = [[class="syntax-number">1]]
for i in range(class="syntax-number">1, numRows):
prev = result[-class="syntax-number">1]
current = [class="syntax-number">1]
for j in range(len(prev) - class="syntax-number">1):
current.append(prev[j] + prev[j + class="syntax-number">1])
current.append(class="syntax-number">1)
result.append(current)
return result
class Solution {
public:
vector<vector<int>> generate(int numRows) {
vector<vector<int>> result;
for (int i = class="syntax-number">0; i < numRows; i++) {
vector<int> row(i + class="syntax-number">1, class="syntax-number">1);
for (int j = class="syntax-number">1; j < i; j++) {
row[j] = result[i - class="syntax-number">1][j - class="syntax-number">1] + result[i - class="syntax-number">1][j];
}
result.push_back(row);
}
return result;
}
};
function generate(numRows: number): number[][] {
const result: number[][] = [];
for (let i = class="syntax-number">0; i < numRows; i++) {
const row = new Array(i + class="syntax-number">1).fill(class="syntax-number">1);
for (let j = class="syntax-number">1; j < i; j++) {
row[j] = result[i - class="syntax-number">1][j - class="syntax-number">1] + result[i - class="syntax-number">1][j];
}
result.push(row);
}
return result;
}