inspiré par Count down from infinity
Étant donné un entier non négatif N
, affichez le nombre de répétitions des étapes suivantes pour atteindre 0:
- Convertir
N
en binaire (4812390 -> 10010010110111001100110
) - Retournez chaque bit (
10010010110111001100110 -> 01101101001000110011001
) - Couper les zéros non significatifs (
01101101001000110011001 -> 1101101001000110011001
) - Convertir en décimal (
1101101001000110011001 -> 3576217
)
Règles
- L'entrée et la sortie peuvent être dans n'importe quel format cohérent et sans ambiguïté
- L'entrée sera dans la plage entière représentable native pour votre langue (si votre langue prend en charge des entiers arbitrairement grands, il n'y a pas de limite)
Cas de test
0 -> 0
1 -> 1
42 -> 6
97 -> 3
170 -> 8
255 -> 1
682 -> 10
8675309 -> 11
4812390 -> 14
178956970 -> 28
2863311530 -> 32
Cette séquence est A005811 dans l'OEIS.
~(~a) == a