Dato un numero intero n
, genera i primi n
numeri binari inclinati, indicizzati 0 o 1. Si chiamano così per come sono generati:
Scrivi i numeri in binario l'uno sotto l'altro (giustificato a destra):
........0
........1
.......10
.......11
......100
......101
......110
......111
.....1000
.........
Quindi, devi prendere ogni diagonale da in basso a sinistra a in alto a destra, in modo tale che ogni cifra finale sia la cifra finale di una diagonale. Ecco la quarta diagonale (indicizzata con zero) contrassegnata con x
's, che è 100
:
........0
........1
.......10
.......11
......10x
......1x1
......x10
......111
.....1000
.........
Le diagonali inclinate verso l'alto in ordine sono:
0
11
110
101
100
1111
1010
.......
Quindi, converti in decimale, dando 0, 3, 6, 5, 4, 15, 10, ...
Questo è code-golf , quindi vince il codice più breve in byte.
n
o il primo n+1
numero?