Sfida:
Dato un input intero positivo n , creare un vettore che segue questo modello:
0 1 0 -1 -2 -1 0 1 2 3 2 1 0 -1 -2 -3 -4 -3 -2 -1 ... ±(n-1) ±n
Oppure, spiegato con le parole: il vettore inizia da 0e fa incrementi di 1fino a raggiungere il numero intero dispari positivo più piccolo che non fa parte della sequenza, quindi diminuisce fino a raggiungere il numero intero negativo (anche in magnitudine) più piccolo che non è fa parte della sequenza. Continua così fino a quando non nviene raggiunto. La sequenza finirà in positivo nse nè dispari e in negativo nse nè pari.
Il formato di output è flessibile.
Casi test:
n = 1
0 1
-----------
n = 2
0 1 0 -1 -2
-----------
n = 3
0 1 0 -1 -2 -1 0 1 2 3
-----------
n = 4
0 1 0 -1 -2 -1 0 1 2 3 2 1 0 -1 -2 -3 -4
-----------
n = 5
0 1 0 -1 -2 -1 0 1 2 3 2 1 0 -1 -2 -3 -4 -3 -2 -1 0 1 2 3 4 5
Puoi scegliere di prendere n indicizzato zero. n = 1darebbe quindi 0 1 0 -1 -2.
Questo è code-golf , quindi vince il codice più corto in ogni lingua! Le spiegazioni sono incoraggiate come sempre!