Questa sfida è semplice, dato un numero decimale, converti in binario e calcola la somma delle sottostringhe del numero binario, la cui lunghezza è inferiore al numero originale. Ecco un esempio:
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
Il tuo programma dovrebbe prendere un singolo intero decimale come input e produrre la somma delle sottostringhe binarie, come visto sopra. Si può presumere che l'input avrà sempre più di due cifre nella sua rappresentazione binaria e che in input non causerà alcun errore durante l'esecuzione del programma.
Questo è code-golf , vince il codice più corto in byte!
Casi test:
2 => 1
3 => 2
4 => 3
5 => 5
6 => 7
7 => 9
8 => 7
9 => 10
10 => 14
11 => 17