您的位置:首页 > 理论基础 > 计算机网络

http://projecteuler.net/problem=14 [Answer:837799]

2011-11-26 15:46 417 查看
 
#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;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  include