The 3n+1 problem solution :
uva 100
problem link: Link
#include<bits/stdc++.h>
using namespace std;
int main()
{
long long a,m,b,i,s,k,j,x;
while(scanf("%lld%lld",&a,&b)==2){
//cin>>a>>b;
//cout<<a<<" "<<b;
cout<<a<<" "<<b;
if(a>b)
{
x=a;
a=b;
b=x;
}
//s=b;
j=1;
k=0;
i=a;
while(i<=b)
{
m=i;
//cout<<i;
while(m!=1)
{
if(m%2==0)
{
m=m/2;
j=j+1;}
else
{m=3*m+1;
j=j+1;}
}
//i=i+1;
if(k<j)
{
k=j;
}
j=1;
i=i+1;
}
cout<<" "<<k<<endl;}
return 0;
}
0 comments:
Post a Comment