Il triangolo di Pascal viene generato iniziando con 1
e facendo formare ogni riga da aggiunte successive. Qui, invece, formeremo un triangolo alternando moltiplicazione e addizione.
Iniziamo a remare 1
solo con un solitario 1
. Successivamente, l'addizione viene eseguita sulle righe dispari e la moltiplicazione viene eseguita sulle righe pari (1 indicizzata). Quando si esegue la fase di aggiunta, assumere che gli spazi esterni al triangolo siano riempiti con 0
s. Quando si esegue la fase di moltiplicazione, supporre che l'esterno sia pieno di 1
s.
Ecco il triangolo completo fino a 7 righe. La *
o +
a sinistra mostra quale passaggio è stato eseguito per generare quella riga.
1 1
2 * 1 1
3 + 1 2 1
4 * 1 2 2 1
5 + 1 3 4 3 1
6 * 1 3 12 12 3 1
7 + 1 4 15 24 15 4 1
Sfida
Dato input n
, genera la n
riga th di questo triangolo.
Regole
- Puoi invece scegliere 0-index, ma tieni presente che le righe di addizione e moltiplicazione devono essere flip-flop, in modo che lo stesso triangolo esatto sia generato come sopra. Si prega di indicare nella richiesta se si sceglie di farlo.
- Si può presumere che l'input e l'output si adattino al tipo intero nativo della tua lingua.
- L'input e l'output possono essere forniti in qualsiasi formato conveniente .
- È 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
Mostra due possibili esempi di output di molti: un elenco o una stringa separata da spazio.
4
[1, 2, 2, 1]
8
"1 4 60 360 360 60 4 1"
n
terza fila.