好坑啊,说a不会太大,但就是会超过二的32次
代码略差
#include<iostream>
using namespace std;
int main()
{
long long a, b, i, co = 0;
cin>>a>>b;
while(1)
{
if(a < 0 && b < 0) break;
++co;
long long p = a, q = b;
i = 1;
while(p - 1)
{
if(p % 2 == 0)
{p /= 2; ++i;}
else if((p * 3 + 1) > q)
break;
else{
p = p * 3 + 1;
++i;
}
}
cout<<"Case "<<co<<": A = "<<a<<", limit = "
<<b<<", number of terms = "<<i<<endl;
cin>>a>>b;
}
return 0;
}