题目描述:
猜想:对于任意大于1的自然数n,若n为奇数,则将n变为3N+1,否则变为n的一半,经过若干次这样的变换,一定会使n变为1.例如:
3-->10-->5-->16-->8-->4-->2-->1
输入n,输出变换的次数.n<=10^9.
样例输入:
3
样例输出:
7
代码:
#include<stdio.h>
int main(){
long long n;//内存溢出解决
int count=0;
scanf("%d",&n);
while(n>1){
if(n%2==0)
n=n/2;
else
n=3*n+1;
printf("%d\n",n);
count++;
}
printf("%d",count);
return 0;
}