disconoscimento
Questa domanda non è un duplicato di questa domanda . Non sto contando cifre specifiche, poiché abbiamo già quelle impostate nei parametri iniziali. Questa domanda si concentra sui numeri decimali che possono essere costruiti dalle stringhe binarie in base alle cifre fornite.
Sfida
Dati due numeri interi Xe Y, che rappresentano rispettivamente il numero di zero ( 0) e uni ( 1), calcolano tutti i possibili equivalenti decimali che possono essere determinati dalla creazione di stringhe binarie utilizzando solo gli zero e quelli forniti e li visualizzano come output.
Esempio 1:
Ingresso: 0 1
Produzione: 1
Spiegazione: Solo uno 1di cui tenere conto, che può essere convertito solo in un modo.
Esempio 2:
Ingresso: 1 1
Produzione: 1,2
Spiegazione: 01converte in 1, 10converte in 2.
Esempio 3:
Ingresso: 3 2
Produzione: 3,5,6,9,10,12,17,18,20,24
Spiegazione: Tre 0secondi e due 1secondi 00011(3), 00101(5), 00110(6), 01001(9), 01010(10), 01100(12), 10001(17), 10010(18), 10100(20), 11000(24)
Limitazioni e regole
- Mi aspetto solo che il tuo codice funzioni dove
0 < X + Y <= 16quindi il numero massimo nell'output può avvenire solo da 161s, cioè parametri0e16. - Come risultato della suddetta limitazione, l'intervallo di numeri che ci aspetteremmo dall'output proviene da
0e65535. - Accetterò funzioni o codice, purché venga fornito l'output risultante, sia che si tratti di un elenco separato da virgole, di un array, di un elenco inviato a STDOUT, ecc. L'unico criterio che devo sottolineare sull'output è che deve essere ordinato.
- Questo è il codice golf, i byte minimi riceveranno la massima gloria.
- Non tollereremo scappatoie sciocche
0 0?
0 <= X + Y <= 16, quindi sì, perché 0 0sarebbe considerato un input valido che soddisfa tale regola.
0 0? Il numero 0 può essere rappresentato da zero, uno o più zeri.