HX3275. 记忆化搜索题三:3n+1问题

提交5 通过2
通过率40%
时间限制1000ms
内存限制128MiB

题目描述

题目描述

在正整数集上定义如下的迭代序列:

n→n/2(若 n 为偶数)  n→3n+1(若 n 为奇数)

从 10 开始应用上述规则,我们可以生成如下的序列:10→5→16→8→4→2→1。

可以看出这个序列(从 10 开始到 1 结束)共有 7 项。尽管还没有被证明,但我们普遍认为,从任何数开始最终都能迭代至 1。

给出多组询问,每组询问有一个正整数 x(x≤10710^{7}),你需要回答从 x 开始到 1 的序列的长度。

注:序列开始生成后允许其中的项超过 10710^{7}。

输入格式

第一行一个正整数 Q,表示询问次数。

接下来 Q 行,每行一个正整数 xix_i。

输出格式

对每个询问,输出以 xix_i 开始到 1 的序列长度。

输入样例 #1

10
1
24
38
23
30
5
31
38
1
44

输出样例 #1

1
11
22
16
19
6
107
22
1
17

输入样例 #2

1
1

输出样例 #2

1

输入样例 #3

1
10000000

输出样例 #3

146

数据范围与约定

1≤Q≤10610^{6},1≤x≤10710^{7};迭代中的项允许超过10710^{7}。