Caracal vs Monster.
Caracal está luchando contra un monstruo. La salud del monstruo es .
Caracal puede atacar eligiendo un monstruo. Cuando se ataca a un monstruo, dependiendo de la salud de ese monstruo, sucede lo siguiente:
- Si la salud del monstruo es , disminuye a .
- Si la salud del monstruo, , es mayor que , ese monstruo desaparece. Luego, aparecen dos nuevos monstruos, cada uno con la salud de .
( denota el entero más grande que no excede .)
Caracal gana cuando la salud de todos los monstruos existentes llega a ser o menos.
Encuentra el número mínimo de ataques que Caracal necesita hacer antes de ganar.
Restricciones
- Todos los valores de entrada son enteros.
Entrada
Leer la salud del monstruo.
Salida
Encuentra el número mínimo de ataques que Caracal necesita hacer antes de ganar.
Ejemplo #1 de Entrada
2
Ejemplo #1 de Salida
3
Cuando Caracal ataca al monstruo inicial, este desaparece y aparecen dos nuevos monstruos, cada uno con la salud de . Luego, Caracal puede atacar a cada uno de estos nuevos monstruos una vez y ganar con un total de tres ataques.
Ejemplo #2 de Entrada
4
Ejemplo #2 de Salida
7
Ejemplo #3 de Entrada
1000000000000
Ejemplo #3 de Salida
1099511627775
Comments