uva_100 - The 3n + 1 problem
/**这道题有一个陷阱,那就是输入的闭区间不一定是a<=b,可能a>b,而且输出时的闭区间顺序要和输入的顺序一样*/
#include <cstdio>#include <algorithm>using namespace std;int fun(int n) { int num(1); while(n>1) { num++; if(n%2!=0) { n = 3*n+1; continue; } n /= 2; } return num;}int main() { int a, b; int maxn; while(~scanf("%d %d",&a,&b)) { maxn = 0; int a1=a,b1=b; if(a>b) swap(a,b); for(int i=a; i<=b; i++) maxn = max(maxn, fun(i)); printf("%d %d %d\n",a1,b1,maxn); } return 0;}