UVa 100

来源:互联网 发布:知乎 冯大辉 离职 编辑:程序博客网 时间:2024/04/20 03:26

问题链接:

点击打开链接

解题思路:

用的比较笨的方法,从整数i到整数j循环求出每次循环长度比较,大于现有max值,则赋给max。

代码如下:

#include<cstdio>#include<stdlib.h>#include<cstring>int f(int x){int cnt=1;do{if(x==1)return cnt;++cnt;if(x%2){x=x*3+1;}else{x/=2;}}while(1);}int main(){int i,j,max,l,r;int cur;while(2==scanf("%d%d",&i,&j)){max=1;if(i<=j){l=i;r=j;}else{l=j;r=i;}for(int x=l;x<=r;++x){cur=f(x);if(cur>max)max=cur;}printf("%d %d %d\n",i,j,max);}return 0;}



0 0
原创粉丝点击