错误:1.需要判断i,j的大小
2.数组定义太大需要全局变量。(OJ好像能跑,但我跑不了)
3.函数定义是为32位(二进制)所以int 不够。
#include<stdio.h>
#include<string.h>
int a[1000010];
int zhouqi(unsigned int n){
int s=0;
two:
s++;
if(n==1){
return s;
}
else if((n+1)%2==0){
n=3*n+1;
}
else {
n=n/2;
}
goto two;
}
int main(){
int i,j;
int x;
int max,max2,min;
memset(a,0,sizeof(a));
while(scanf("%d %d",&i,&j)!=EOF){
max=0;
if(i>j){
max2=i;
min=j;
}
else{
max2=j;
min=i;
}
for(int z=i;z<=;z++){
if(a[z]==0){
a[z]=zhouqi(z);
if(max<a[z])
max=a[z];
}
else {
if(max<a[z])
max=a[z];
}
}
printf("%d %d %d\n",i,j,max);
}
}