Dodatnią liczbę całkowitą można rozcieńczyć , wstawiając 0
między dwa bity w jej rozwinięciu binarnym. Oznacza to, że n
liczba -bitowa ma n-1
rozcieńczenia, które niekoniecznie wszystkie są różne.
Na przykład dla 12
(lub 1100
binarnie) rozcieńczenia są
11000 = 24
^
11000 = 24
^
10100 = 20
^
W tym wyzwaniu weźmiemy sumę wszystkich rozcieńczeń, z wyjątkiem oryginalnej liczby. Ponieważ 12
, biorąc sumę 24, 24, 20
wyników 68
, 68
powinna być również wynikiem dla 12
.
Wyzwanie
Biorąc pod uwagę dodatnią liczbę całkowitą n > 1
jako dane wejściowe, wyślij / zwróć rozcieńczoną sumę, jak wyjaśniono powyżej.
Przykłady
in out
--- ---
2 4
3 5
7 24
12 68
333 5128
512 9216
Zasady
- Można założyć, że dane wejściowe i wyjściowe pasują do natywnego typu liczb całkowitych twojego języka.
- Dane wejściowe i wyjściowe można podawać w dowolnym dogodnym formacie .
- Dopuszczalny jest pełny program lub funkcja. Jeśli funkcja, możesz zwrócić dane wyjściowe zamiast je wydrukować.
- Standardowe luki są zabronione.
- To jest golf golfowy, więc obowiązują wszystkie zwykłe zasady gry w golfa, a wygrywa najkrótszy kod (w bajtach).