Un numero intero positivo può essere diluito inserendo un 0
tra due bit nella sua espansione binaria. Ciò significa che un n
numero di bit presenta n-1
diluizioni, che non sono necessariamente tutte distinte.
Ad esempio, per 12
(o 1100
in binario), le diluizioni sono
11000 = 24
^
11000 = 24
^
10100 = 20
^
In questa sfida, prenderemo la somma di tutte le diluizioni, escluso il numero originale. Per 12
, prendendo la somma dei 24, 24, 20
risultati 68
, 68
dovrebbe essere l'output per 12
.
Sfida
Dato un numero intero positivo n > 1
come input, output / restituisce la somma diluita come spiegato sopra.
Esempi
in out
--- ---
2 4
3 5
7 24
12 68
333 5128
512 9216
Regole
- 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.
- 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).