考虑下面的程序:
输入 n
输出 n
如果 n=1 退出程序
如果 n 是奇数,n→3n+1
如果 n 是偶数 n→2n
回到第 2 步
若输入 22,会得出下面的数列: 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1
。
我们推测,对于任何输入的正整数 n,程序最终都会输出 1(n≤106 时,保证推论正确)。 给定 n,可以计算这个程序输出的所有数字的数量(包括最后的 1)。我们把输出的数字总数称为这个 n 的周期长度。对于上面的例子,周期长度为 16。
对于输入的每对 (i,j),计算 [i,j] 内所有数字区间长度的最大值。
输入几对整数 (i,j),保证 0<i,j≤104。对于每对 (i,j),你需要计算 [i,j] 内最大区间长度。数据保证 32 位整数在计算过程中不溢出。
对于每对 (i,j),先输出 i,j,再输出 [i,j] 范围内最大周期长度,每个数字中间一个空格,然后换行。
## 题目描述
考虑下面的程序:
1. 输入 $n$
2. 输出 $n$
3. 如果 $n=1$ 退出程序
4. 如果 $n$ 是奇数,$n \rightarrow 3 n + 1$
5. 如果 $n$ 是偶数 $n\rightarrow \dfrac n 2$
6. 回到第 $2$ 步
若输入 $22$,会得出下面的数列: `22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1`。
我们推测,对于任何输入的正整数 $n$,程序最终都会输出 $1$($n\le 10^6$ 时,保证推论正确)。 给定 $n$,可以计算这个程序输出的所有数字的数量(包括最后的 $1$)。我们把输出的数字总数称为这个 $n$ 的周期长度。对于上面的例子,周期长度为 $16$。
对于输入的每对 $(i,j)$,计算 $[i,j]$ 内所有数字区间长度的最大值。
## 输入格式
输入几对整数 $(i,j)$,保证 $0<i,j\le 10^4$。对于每对 $(i,j)$,你需要计算 $[i,j]$ 内最大区间长度。数据保证 $32$ 位整数在计算过程中不溢出。
## 输出格式
对于每对 $(i,j)$,先输出 $i,j$,再输出 $[i,j]$ 范围内最大周期长度,每个数字中间一个空格,然后换行。