Joe , 5 3 byte (+2 o +3 per-t bandiera)
Beh, a quanto pare non ho sfruttato appieno il potenziale di Joe. Questo era possibile quando l'ho pubblicato per la prima volta.
\AR
Qui, Rfornisce l'intervallo da 0 a n, in esclusiva. Poi\A prende i successivi prefissi ( Aè la funzione identità). Esempi:
Con -tflag (nota: questo è ora l'output standard anche senza flag):
(\AR)5
0
0 1
0 1 2
0 1 2 3
0 1 2 3 4
\AR5
0
0 1
0 1 2
0 1 2 3
0 1 2 3 4
\AR2
0
0 1
\AR1
0
\AR0
Senza esso:
\AR5
[[0], [0, 1], [0, 1, 2], [0, 1, 2, 3], [0, 1, 2, 3, 4]]
(\AR)5
[[0], [0, 1], [0, 1, 2], [0, 1, 2, 3], [0, 1, 2, 3, 4]]
\AR2
[[0], [0, 1]]
\AR1
[[0]]
\AR0
[]
Le regole sono state leggermente modificate. Il mio vecchio codice non si comportava correttamente con N = 0. Inoltre, ora l'output potrebbe essere solo un elenco nidificato, quindi -tpuò essere eliminato.
1R1+R
Ora, Rnfornisce un intervallo da 0 a n, esclusivo. Se dato 0, restituisce un elenco vuoto. 1+aggiunge 1 a ogni elemento di quell'intervallo.1Rmappa i valori a intervalli da 1 a x. I collegamenti vuoti, quando mappati, restituiscono elenchi vuoti.
Esempio di output:
1R1+R0
[]
1R1+R5
[[1], [1, 2], [1, 2, 3], [1, 2, 3, 4], [1, 2, 3, 4, 5]]
Aggiornamento: ho appena notato qualcosa. La funzione mappa automaticamente per classificare 0 elementi. L'esempio seguente viene eseguito con -tflag.
1R1+R3 5 8
1
1 2
1 2 3
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
1 2 3 4 5 6
1 2 3 4 5 6 7
1 2 3 4 5 6 7 8
Vecchio: 5 byte (con la -tbandiera)
1R1R
Questa è una funzione anonima che accetta un numero, crea un elenco da 1 a N ( 1Rn) e mappa quei valori all'intervallo precedente, fornendo un intervallo da 1 a x per ogni elemento compreso tra 1 e N.
Il -tflag fornisce l'output come una tabella simile a J.
1R1R5
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
Nota: la lingua è molto nuova e non completa, ma l'ultima versione è stata rilasciata prima di questa sfida.