Problema
Mostra originale (inglese)La prima riga è [1]. Ogni riga successiva inizia e termina con 1. Ogni elemento interno è la somma dei due elementi immediatamente sopra di esso. Restituisci le prime rows righe, iniziando dal singolo 1.
Implementa pascals_triangle(rows).
Input
rows: Quante righe generare.
Output
Restituisci una lista di righe, partendo dall'alto; ogni riga è una lista di interi.
Vincoli
0 ≤ rows ≤ 60. Ogni elemento rientra in un intero con segno a 64 bit. Zero righe restituisce una lista vuota.
Esempi
Input:
rows = 4
Output atteso:
expected = [
[1],
[1, 1],
[1, 2, 1],
[1, 3, 3, 1]
]
Input:
long long rows = 4;
Output atteso:
std::vector<std::vector<long long>> expected = {
{1},
{1, 1},
{1, 2, 1},
{1, 3, 3, 1}
};
Input:
long rows = 4;
Output atteso:
long[][] expected = new long[][] {
new long[] {1},
new long[] {1, 1},
new long[] {1, 2, 1},
new long[] {1, 3, 3, 1}
};
Spiegazione
Il 2 nella terza riga è 1 + 1. I due 3 interni nella quarta riga sono 1 + 2 e 2 + 1.
Input:
rows = 0
Output atteso:
expected = []
Input:
long long rows = 0;
Output atteso:
std::vector<std::vector<long long>> expected = {};
Input:
long rows = 0;
Output atteso:
long[][] expected = new long[][] {};
Spiegazione
Non viene richiesta nessuna riga, quindi restituisci una lista vuota.
Riferimenti
Questa sfida è adattata per CodeUtility. Segui la traccia e i vincoli sopra.