Collatz

Time Limit:
1 Sec
Memory Limit:
128Mb
Enviados:
211
Resuelto:
50

Descripción

Un algoritmo propuesto por Lothar Collatz genera una secuencia de enteros y es dado de la siguiente forma:

Paso 1: Elegir un número arbitrario N como el primer término en la secuencia.

Paso 2: si N = 1 parar.

Paso 3: Si N es par dividirlo entre 2 y volver al paso 2.

Paso 4: Si N es impar multiplicarlo por 3 y sumarle uno (3 * N + 1) y volver al paso 2.

Como se muestra en el proceso anterior el algoritmo siempre acabará en el paso 2; sin embargo muchas veces está secuencia generará valores mayores a los que entran en un entero. 

Entrada

En este problema queremos saber la cantidad de términos que generará la secuencia que comienza en N hasta terminar, o sobrepasar un límite L. Se garantiza que ni N ni L sobrepasaran el número 2147483647 (el máximo valor que se puede almacenar en un entero) y que el valor de N siempre será menor que el de L. La entrada acabará cuando N = L = -1

Salida

Imprimir la cantidad de términos para cada una de las secuncias, uno por línea.

Ejemplo Entrada

Copy icon
3 100
34 100
75 250
27 2147483647
101 304
101 303
-1 -1

Ejemplo Salida

Copy icon
8
14
3
112
26
1

Ayuda