POJ_1207

http://poj.org/problem?id=1207

注意输入的两个数有可能先大后小

//POJ 1207
#include<stdio.h>
int Length(int a){
    int i = 1;
    while(true){
        if(a==1){
            return i;
        }
        if(a%2==0){
            a = a/2;
        }
        else{
            a = a*3+1;
        }
        i++;
    }
}
int main(){
    int ai,aj;
    while(scanf("%d %d",&ai,&aj)!=EOF){
        int i,j;
        int max;
        max = -1;
        int ii,ij;
        if(ai>aj){
            ii = aj;
            ij = ai;
        }
        else{
            ii = ai;
            ij = aj;
        }
        for(i=ii;i<ij+1;i++){
            j = Length(i);
            if(max<j){
                max = j;
            }
        }
        printf("%d %d %d\n",ai,aj,max);
    }
    return 0;
} 

 

posted @ 2019-10-28 15:36  智人心  阅读(121)  评论(0)    收藏  举报