Time Limit: 1000 ms
Memory Limit: 524288 KiB
Input / Output: stdio

Submit

Source: Unknown
License: COPYRIGHT[?]

对于一个数n,如果是偶数,就把n砍掉一半;如果是奇数,把n变成 3*n+ 1后砍掉一半,直到该数变为1为止。

请计算需要经过几步才能将n变到1,具体可见样例。

输入格式

测试包含多个用例,每个用例包含一个整数n,当n为0 时表示输入结束。(1<=n<=10000000)

输出格式

对于每组测试用例请输出一个数,表示需要经过的步数,每组输出占一行。

样例输入

3
1
0

样例输出

5
0

提示

这题,怎么简单怎么来。做完以后可以试试这个升级版(注意这题是求链长,而不是步数):

http://acm.whu.edu.cn/learn/problem/detail?problem_id=1314

来源

http://ac.jobdu.com/problem.php?id=1031