#P707. 组合+判断素数(递归入门)

组合+判断素数(递归入门)

题目描述

33DAI 叫来了 1010010^{100} 位小朋友,编号为 1101001\sim 10^{100}

现在 33DAI 手上有一个计算器,计算器上的数字是 00。一开始,33DAI 把这个计算器传递给了编号为 xx 的小朋友。每当一位小朋友拿到计算器时,他会进行如下操作:

  • 把计算器上的数字加上自己的编号
  • 如果计算器上数字的个位是 33,那么就结束传递。否则假设当前小朋友的编号为 tt,则按下面的规则传递给下一位小朋友:
    • 如果 tt 是奇数,那么传递给编号为 3t+13t+1 的小朋友。
    • 如果 tt 是偶数,那么传递给编号为 t2\frac{t}{2} 的小朋友。

请你算算计算器一共会传递给多少位小朋友才停下。

输入格式

一行,一个整数 xx

输出格式

一行,一个整数,表示计算器传递经过的小朋友总数。

样例

10
5

样例 1 解释

传递路径为(括号内为传完之后计算器上的数字):

$10(10) \sim 5(15) \sim 16(31) \sim 8(39) \sim 4(43)$

一共经过了 55 位同学后停下。

3
1

样例 2 解释

33 号小朋友拿到计算器后,计算器加 33 得到 33,个位为 33,立即结束传递,只经过 11 位小朋友。

数据规模与约定

对于 100%100\% 的数据,1x1001 \le x \le 100

  • 子任务 1(30 分):保证 xx 的个位是 33
  • 子任务 2(30 分):保证 x10x\le 10
  • 子任务 3(40 分):没有特殊限制。