青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

技術(shù),瞎侃,健康,休閑……

mahu@cppblog 人類的全部才能無非是時(shí)間和耐心的混合物
posts - 11, comments - 13, trackbacks - 0, articles - 12
  C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

The 3n + 1 problem

Posted on 2006-06-10 00:41 mahudu@cppblog 閱讀(1330) 評(píng)論(3)  編輯 收藏 引用 所屬分類: C/C++

Background

Problems in Computer Science are often classified as belonging to a certain class of problems (e.g., NP, Unsolvable, Recursive). In this problem you will be analyzing a property of an algorithm whose classification is not known for all possible inputs.

The Problem

Consider the following algorithm:

1.	input n

2. print n

3. if n = 1 then STOP

4. if n is odd then tex2html_wrap_inline44

5. else tex2html_wrap_inline46

6. GOTO 2

Given the input 22, the following sequence of numbers will be printed 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1

It is conjectured that the algorithm above will terminate (when a 1 is printed) for any integral input value. Despite the simplicity of the algorithm, it is unknown whether this conjecture is true. It has been verified, however, for all integers n such that 0 < n < 1,000,000 (and, in fact, for many more numbers than this.)

Given an input n, it is possible to determine the number of numbers printed (including the 1). For a given n this is called the cycle-length of n. In the example above, the cycle length of 22 is 16.

For any two numbers i and j you are to determine the maximum cycle length over all numbers between i and j.

The Input

The input will consist of a series of pairs of integers i and j, one pair of integers per line. All integers will be less than 1,000,000 and greater than 0.

You should process all pairs of integers and for each pair determine the maximum cycle length over all integers between and including i and j.

You can assume that no opperation overflows a 32-bit integer.

The Output

For each pair of input integers i and j you should output i, j, and the maximum cycle length for integers between and including i and j. These three numbers should be separated by at least one space with all three numbers on one line and with one line of output for each line of input. The integers i and j must appear in the output in the same order in which they appeared in the input and should be followed by the maximum cycle length (on the same line).

Sample Input

1 10
100 200
201 210
900 1000

Sample Output

1 10 20
100 200 125
201 210 89
900 1000 174

Solution ?

#include <iostream>

using namespace std;

?

int cycle(intm)

{

?? int i = 1;

?? while (m != 1){

????? if(m%2)

??????? m = m*3 + 1;

????? else

??????? m /= 2;

????? i++;

?? }

?? return i;

}??

?

int main()

{

?? int m,n,max,temp;

?? int mOriginal,nOriginal;

?? int i;

?

?? while (cin >> m >> n){

????? mOriginal = m;

????? nOriginal = n;

????? if (m > n){

??????? temp = m;

??????? m = n;

??????? n = temp;

????? }

?

????? max = cycle(m);

????? for (i = m+1; i <= n; i++){

??????? temp = cycle(i);

??????? if (temp > max){

?????????? max = temp;

??????? }

????? }?

????? cout << mOriginal << " " << nOriginal << " " << max << endl;

?? }

?? return 0;

}

Feedback

# re: The 3n + 1 problem  回復(fù)  更多評(píng)論   

2007-11-14 20:34 by 無意中看到
你這個(gè)程序?qū)儆诤茈y通過的,基本上會(huì)碰到超時(shí)問題
輸入: 1 1000000
看你多牛的計(jì)算機(jī)3秒能搞出來
這是典型的dp問題,暴力是不好用的

# re: The 3n + 1 problem  回復(fù)  更多評(píng)論   

2008-10-18 17:17 by TaiwanNo.1
/*
這個(gè)可以以0.7 sec完成
*/
#include <stdio.h>

int compute(int a)
{
int cnt = 1;
while(a > 1)
{
a & 0x01 ? (a = (a<<1) + a + 1) : (a >>= 1);
++cnt;
}
return cnt;
}


int a, b, c;
int i, j;
int main(void)
{

while(0 < scanf("%d %d", &i, &j))
{
c = 0;
i < j ? (a = i, b = j) : (a = j, b = i);
while(a <= b)
{
int tmp = compute(a++);
if(tmp > c)
c = tmp;
}
printf("%d %d %d\n", i, j, c);
}
return 0;
}

# re: The 3n + 1 problem  回復(fù)  更多評(píng)論   

2011-01-16 13:39 by UDHeart
@TaiwanNo.1
...我就是這樣寫的,沒有這么快
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美一区成人| 亚洲欧美日韩在线| 久久久欧美一区二区| 日韩视频精品在线观看| 欧美精品久久久久久久免费观看| 一本到高清视频免费精品| 欧美国产高潮xxxx1819| 久久综合给合久久狠狠色| 久久岛国电影| 久久亚洲私人国产精品va| 欧美一区二区播放| 久久成人精品| 欧美**字幕| 国产精品久久97| 国产真实精品久久二三区| 国产亚洲毛片在线| 亚洲激情啪啪| 亚洲午夜久久久久久久久电影院 | 欧美激情第3页| 欧美日本在线看| 国产精品福利在线| 亚洲国产精品久久久久秋霞蜜臀| 1204国产成人精品视频| 亚洲国内自拍| 久久精品一区二区三区四区| 好男人免费精品视频| 亚洲毛片在线| 久久精品视频在线| 久久久噜噜噜久久| 免费在线观看成人av| 国产精品日韩专区| 亚洲国产日韩欧美在线图片| 亚洲一区二区三区四区在线观看| 午夜精品www| 国产色产综合色产在线视频| 亚洲日本成人在线观看| 久久成人免费| 日韩视频中文字幕| 久久尤物视频| 亚洲精品精选| 亚洲欧美国产va在线影院| 亚洲欧美日韩另类| 欧美精品久久99久久在免费线| 国产精品久久99| 欧美一区二区三区在线播放| 欧美成人视屏| 蜜桃久久精品乱码一区二区| 国产精品无码永久免费888| 亚洲日本aⅴ片在线观看香蕉| 国产一区二区黄| 老司机成人网| 久久久久综合一区二区三区| 国产视频久久久久久久| 欧美一区二区网站| 亚洲一区二区免费视频| 国产精品国产自产拍高清av王其 | 久久一区免费| 亚洲欧美另类综合偷拍| 欧美福利视频一区| 亚洲国产精品久久| 在线亚洲激情| 欧美jizz19hd性欧美| 免播放器亚洲| 亚洲精品欧美| 久久精品九九| 夜夜嗨av一区二区三区| 亚洲精品中文字幕在线| 六十路精品视频| 久久se精品一区精品二区| 久久久久久久97| 亚洲性线免费观看视频成熟| 午夜精品久久久久久久久久久久| 国产在线视频欧美| 99精品福利视频| 美女视频黄免费的久久| 先锋影音国产精品| 欧美日韩亚洲一区三区 | 一区二区三区日韩欧美| 久久亚洲综合网| 亚洲精品乱码久久久久久黑人 | 亚洲国产成人不卡| 美国三级日本三级久久99| 日韩视频一区二区三区| 欧美一区二区三区另类| 亚洲欧美日韩精品在线| 欧美日韩ab| 亚洲人成网站精品片在线观看 | 久久一区二区三区国产精品 | 91久久中文| 欧美伊人久久| 亚洲欧美国内爽妇网| 欧美日韩在线观看一区二区| 老司机免费视频一区二区三区 | 亚洲第一区在线| 宅男噜噜噜66一区二区| 国产精品任我爽爆在线播放 | 亚洲日韩第九十九页| 久久综合影视| 亚洲手机成人高清视频| 午夜精品福利视频| 精品动漫3d一区二区三区| 玖玖玖国产精品| 亚洲视频电影图片偷拍一区| 久久久久9999亚洲精品| 亚洲欧美国产制服动漫| 亚洲国产精品视频| 精品91在线| 国产精品视频精品| 欧美另类高清视频在线| 久久精品国产亚洲精品| 亚洲综合色激情五月| 中文国产一区| 亚洲精品之草原avav久久| 欧美国产日韩一二三区| 久久一区二区三区四区| 亚洲天堂激情| 亚洲午夜精品| 久久国产精品99国产| 亚洲一区二区三区久久| 日韩午夜免费| 亚洲四色影视在线观看| 宅男噜噜噜66一区二区| 亚洲综合导航| 午夜精品久久久久久99热软件| 亚洲乱码精品一二三四区日韩在线 | 亚洲一区二区影院| 亚洲精品在线免费观看视频| 在线看无码的免费网站| 国内久久精品| 夜夜嗨av一区二区三区| 亚洲一区二区三区国产| 久久大香伊蕉在人线观看热2| 亚洲在线观看视频网站| 午夜精品久久久久久久久| 国产中文一区二区| 亚洲国产精品一区二区三区| 日韩视频永久免费| 国产一区二区三区电影在线观看| 欧美成年人在线观看| 欧美视频在线观看一区二区| 国产主播一区二区三区| 日韩一级裸体免费视频| 欧美一区二区三区在线观看视频| 欧美与欧洲交xxxx免费观看| 欧美成年人网| 午夜在线观看免费一区| 欧美另类高清视频在线| 好吊一区二区三区| 亚洲男女毛片无遮挡| 亚洲国产第一| 美女福利精品视频| 国产一区二区在线观看免费播放| 亚洲精品日韩一| 欧美黄色大片网站| 久久免费一区| 136国产福利精品导航| 久久综合电影| 久久久久久有精品国产| 伊人久久男人天堂| 狂野欧美一区| 欧美96在线丨欧| 欧美影片第一页| 激情久久久久久| 免费久久久一本精品久久区| 久久精品夜色噜噜亚洲a∨| 国产欧美日韩综合一区在线播放| 一本久久a久久免费精品不卡| 亚洲人成高清| 国产欧美精品一区二区色综合 | 欧美大片专区| 欧美激情亚洲国产| 午夜免费日韩视频| 香蕉久久夜色精品| 亚洲人成亚洲人成在线观看图片 | 免费亚洲一区| 中国日韩欧美久久久久久久久| 一本到12不卡视频在线dvd| 国产欧美va欧美不卡在线| 欧美黄污视频| 国内揄拍国内精品少妇国语| 欧美激情中文字幕在线| 国产日韩欧美在线观看| 亚洲日本无吗高清不卡| 国内一区二区在线视频观看 | 另类国产ts人妖高潮视频| 欧美日韩三级视频| 欧美激情va永久在线播放| 国产精品色一区二区三区| 亚洲第一二三四五区| 狠狠做深爱婷婷久久综合一区| 亚洲精品亚洲人成人网| 影音欧美亚洲| 久久激情视频免费观看| 欧美在线亚洲| 国产日韩综合| 久久精品国语| 欧美成人69| 久久人人爽人人爽| 欧美成人一区二免费视频软件| 一区在线播放|