Un entero positivo se puede diluir insertando 0
entre dos bits en su expansión binaria. Esto significa que un n
número de bits tiene n-1
diluciones, que no necesariamente son todas distintas.
Por ejemplo, para 12
(o 1100
en binario), las diluciones son
11000 = 24
^
11000 = 24
^
10100 = 20
^
En este desafío, vamos a tomar la suma de todas las diluciones, excluyendo el número original. Para 12
, teniendo en cuenta la suma de 24, 24, 20
resultados 68
, también 68
debería ser la salida para 12
.
Reto
Dado un entero positivo n > 1
como entrada, salida / retorno de la suma diluida como se explicó anteriormente.
Ejemplos
in out
--- ---
2 4
3 5
7 24
12 68
333 5128
512 9216
Reglas
- Se puede suponer que la entrada y la salida encajan en el tipo de entero nativo de su idioma.
- La entrada y la salida se pueden dar en cualquier formato conveniente .
- Un programa completo o una función son aceptables. Si es una función, puede devolver el resultado en lugar de imprimirlo.
- Las lagunas estándar están prohibidas.
- Este es el código de golf, por lo que se aplican todas las reglas habituales de golf, y gana el código más corto (en bytes).