Este desafío es simple, dado un número decimal, convertir a binario y calcular la suma de las subcadenas del número binario, cuya longitud es más corta que el número original. Aquí hay un ejemplo:
Input:
11
Binary:
11 -> 1011
Substrings:
101 = 5
011 = 3
10 = 2
01 = 1
11 = 3
1 = 1
0 = 0
1 = 1
1 = 1
Sum:
5+3+2+1+3+1+0+1+1=17
Output:
17
Su programa debe tomar un solo entero decimal como entrada y salida de la suma de las subcadenas binarias, como se ve arriba. Puede suponer que la entrada siempre tendrá más de dos dígitos en su representación binaria y que en la entrada no causará ningún error durante la ejecución de su programa.
Este es el código de golf , ¡el código más corto en bytes gana!
Casos de prueba:
2 => 1
3 => 2
4 => 3
5 => 5
6 => 7
7 => 9
8 => 7
9 => 10
10 => 14
11 => 17