#include <iostream>
using namespace std;
int main()
{
int longest_chain = 0;
int number = 0;
for ( int n = 1; n < 1000000; ++n )
{
__int64 tmp = n;
int terms = 1;
while ( tmp != 1 )
{
if ( tmp & 1 )
{
tmp = tmp * 3 + 1;
}
else
{
tmp >>= 1;
}
++terms;
}
if ( terms > longest_chain )
{
longest_chain = terms;
number = n;
}
}
cout << number << endl;
return 0;
}
5747

被折叠的 条评论
为什么被折叠?



