15 Jun 2024C++ / Python / TypeScriptEasy

Pascal's Triangle

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.

solution files

  • C++ pascals-triangle/synced-solution.cpp
  • Python pascals-triangle/synced-solution.py
  • TypeScript pascals-triangle/synced-solution.ts

Solution files

Pythonpascals-triangle/synced-solution.py
class 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
C++pascals-triangle/synced-solution.cpp
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;
    }
};
TypeScriptpascals-triangle/synced-solution.ts
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;
}