声明:本人原创,转载请说明出处!
题目分析:该题仅需把握两点:第一点,如果它是偶数,那么把它砍掉一半;第二点,如果它是奇数,那么把(3n+1)砍掉一半。每次执行这两点的任意一点时都需进行count++计数操作即可。
完全通过的正确代码:
#include<iostream>
using namespace std;
int main()
{
int n,count=0;
cin>>n;
while(n!=1)
{
if(n%2==0)
{
n=n/2;
count++;
}
else
{
n=(3*n+1)/2;
count++;
}
}
cout<<count;
return 0;
}