52 lines
1.2 KiB
C++
52 lines
1.2 KiB
C++
/*
|
|
date:107/10/13
|
|
author:Chen Yi Jing
|
|
|
|
如果是奇數做某些事,是偶數就做其他事,有點無聊的題目
|
|
1. i 的值是要用來跑迴圈的不能改變
|
|
2. 題目並沒有說 start 會比 end 小
|
|
*/
|
|
|
|
#include<iostream>
|
|
using namespace std;
|
|
int main() {
|
|
int start = 0, end = 0, tmp = 1, max = 0, value = 0;
|
|
int temp = 0;
|
|
int change = 0;
|
|
while(cin >> start >> end) {
|
|
if (start > end) {
|
|
temp = end;
|
|
end = start;
|
|
start = temp;
|
|
|
|
change = 1;
|
|
}
|
|
|
|
for (int i = start; i <= end; i++) {
|
|
value = i;
|
|
while (value != 1) {
|
|
if (value % 2 != 0){
|
|
value = 3 * value + 1;
|
|
tmp++;
|
|
}
|
|
else {
|
|
value /= 2;
|
|
tmp++;
|
|
}
|
|
}
|
|
if(tmp > max)
|
|
max = tmp;
|
|
|
|
tmp = 1;
|
|
}
|
|
|
|
if (change == 1) {
|
|
temp = end;
|
|
end = start;
|
|
start = temp;
|
|
}
|
|
cout << start << " " << end << " " << max<< endl;
|
|
max = 0;
|
|
change = 0;
|
|
}
|
|
} |