HEU 6000 The 3n + 1 problem
1
/**************************************
2
Problem: HEU 6000 The 3n + 1 problem
3
Time: 0.0120 s
4
Memory: 236 k
5
Accepted Time: 2009-04-02 13:54:11
6
Tips: 第一个数有可能比第二个大。
7
**************************************/
8
#include <stdio.h>
9
int main()
10
{
11
long a,b;
12
while(scanf("%ld%ld",&a,&b)!=EOF)
13
{
14
long i,j,max=0;
15
long aa=a<b?a:b;
16
long bb=a>b?a:b;
17
for(i=aa;i<=bb;i++)
18
{
19
long sum=1,temp=i;
20
while(temp!=1)
21
{
22
if(temp%2==1)temp=3*temp+1;
23
else temp/=2;
24
sum++;
25
}
26
if(sum>max)max=sum;
27
}
28
printf("%ld %ld %ld\n",a,b,max);
29
}
30
return 0;
31
}
32
/**************************************2
Problem: HEU 6000 The 3n + 1 problem3
Time: 0.0120 s4
Memory: 236 k 5
Accepted Time: 2009-04-02 13:54:116
Tips: 第一个数有可能比第二个大。 7
**************************************/8
#include <stdio.h>9
int main()10
{11
long a,b;12
while(scanf("%ld%ld",&a,&b)!=EOF)13
{14
long i,j,max=0;15
long aa=a<b?a:b;16
long bb=a>b?a:b;17
for(i=aa;i<=bb;i++)18
{19
long sum=1,temp=i;20
while(temp!=1)21
{22
if(temp%2==1)temp=3*temp+1;23
else temp/=2;24
sum++;25
}26
if(sum>max)max=sum;27
}28
printf("%ld %ld %ld\n",a,b,max);29
}30
return 0;31
}32




浙公网安备 33010602011771号