Thử thách này rất đơn giản, được đưa ra một số thập phân, chuyển đổi thành nhị phân và tính tổng các chuỗi con của số nhị phân, có độ dài ngắn hơn số gốc. Đây là một ví dụ:
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
Chương trình của bạn nên lấy một số nguyên thập phân duy nhất làm đầu vào và đầu ra tổng của các chuỗi con nhị phân, như đã thấy ở trên. Bạn có thể cho rằng đầu vào sẽ luôn có nhiều hơn hai chữ số trong biểu diễn nhị phân của nó và rằng đầu vào sẽ không gây ra bất kỳ lỗi nào trong quá trình thực hiện chương trình của bạn.
Đây là mã golf , mã ngắn nhất tính bằng byte thắng!
Các trường hợp thử nghiệm:
2 => 1
3 => 2
4 => 3
5 => 5
6 => 7
7 => 9
8 => 7
9 => 10
10 => 14
11 => 17