#AT1298. B - Collatz Problem

B - Collatz Problem

B - Collatz问题

得分: 200 分

问题描述

给定一个序列 $a=\{a_1,a_2,a_3,......\}$,其满足以下规则:

  • 第一个元素 $s$ 作为输入给出。

  • 令函数 $f(n)$ 如下: 当 $n$ 是偶数时,$f(n) = n/2$,当 $n$ 是奇数时,$f(n) = 3n+1$。

  • 当 $i = 1$ 时,$a_i = s$,当 $i > 1$ 时,$a_i = f(a_{i-1})$。

找到满足以下条件的最小整数 $m$:

  • 存在整数 $n$,满足 $a_m = a_n (m > n)$。

约束条件

  • $1 \leq s \leq 100$
  • 输入中的所有值都为整数。
  • 保证 $a$ 中的所有元素以及满足条件的最小 $m$ 均不超过 $1000000$。

输入

输入以以下格式从标准输入给出:

ss

输出

输出满足条件的最小整数 $m$。


8
5

$a=\{8,4,2,1,4,2,1,4,2,1,......\}$. 由于 $a_5=a_2$,结果为 $5$。


7
18

$a=\{7,22,11,34,17,52,26,13,40,20,10,5,16,8,4,2,1,4,2,1,......\}$。


54
114