BMO2 2009'dan gelen dördüncü problemden esinlenmiştir .
Girdi veya parametre olarak pozitif bir tamsayı n verildiğinde , ikili gösterimleri n'nin ikili genişlemesinde bloklar olarak oluşan pozitif tamsayıların sayısını döndürür .
Örneğin, 13 -> 6, çünkü ikili dosyadaki 13, 1101'dir ve alt dizeleri vardır 1101, 110, 101, 11, 10, 1. Sıfır ile başlayan ikili sayıları saymıyoruz ve sıfırın kendisini saymıyoruz.
Test Durumları
13 -> 6
2008 -> 39
63 -> 6
65 -> 7
850 -> 24
459 -> 23
716 -> 22
425 -> 20
327 -> 16
Sen de alabilir n Aşağıdakilerden herhangi biri olarak:
- Bir tam sayı
- ikili gösterim için doğruluk / falsy değerlerinin bir listesi
- ikili gösterim için bir dize
- bir temel 10 dize (neden kimse bunu yapacak emin değilim)
Kodunuzu mümkün olduğunca kısa yapın.