Quasi tutti qui conoscono il triangolo di Pascal. È formato da file successive, dove ogni elemento è la somma dei suoi due vicini in alto a sinistra e in alto a destra. Ecco le prime 5
righe (prese in prestito dal triangolo di Generate Pascal ):
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
Prenderemo il Triangolo di Pascal ed eseguiremo alcune somme (hah-ha). Per un dato input n
, genera la somma colonnare delle prime n
righe del Triangolo di Pascal. Ad esempio, per l'input 5
, l'output sarebbe formato da
1
1 1
1 2 1
1 3 3 1
[+] 1 4 6 4 1
----------------------
1 1 5 4 9 4 5 1 1
Quindi l'output sarebbe [1, 1, 5, 4, 9, 4, 5, 1, 1]
.
Nota che non devi necessariamente generare il Triangolo di Pascal per calcolare la somma - dipende dalla tua implementazione se è più breve farlo o no.
Ingresso
Un singolo numero intero positivo n
con n >= 1
qualsiasi formato conveniente .
Produzione
L'array / elenco risultante della somma per colonna delle prime n
righe del triangolo di Pascal, come indicato sopra. Ancora una volta, in qualsiasi formato adatto.
Regole
- Le nuove linee iniziali o finali o gli spazi bianchi sono tutti opzionali, purché i personaggi stessi si allineino correttamente.
- È accettabile un programma completo o una funzione. Se una funzione, è possibile restituire l'output anziché stamparlo.
- Se possibile, includi un collegamento a un ambiente di test online in modo che altre persone possano provare il tuo codice!
- Sono vietate le scappatoie standard .
- Si tratta di code-golf quindi si applicano tutte le normali regole del golf e vince il codice più breve (in byte).
Esempi
[input]
[output]
1
[1]
2
[1, 1, 1]
3
[1, 1, 3, 1, 1]
5
[1, 1, 5, 4, 9, 4, 5, 1, 1]
11
[1, 1, 11, 10, 54, 44, 155, 111, 286, 175, 351, 175, 286, 111, 155, 44, 54, 10, 11, 1, 1]