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

技術,瞎侃,健康,休閑……

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

The 3n + 1 problem

Posted on 2006-06-10 00:41 mahudu@cppblog 閱讀(1330) 評論(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  回復  更多評論   

2007-11-14 20:34 by 無意中看到
你這個程序屬于很難通過的,基本上會碰到超時問題
輸入: 1 1000000
看你多牛的計算機3秒能搞出來
這是典型的dp問題,暴力是不好用的

# re: The 3n + 1 problem  回復  更多評論   

2008-10-18 17:17 by TaiwanNo.1
/*
這個可以以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  回復  更多評論   

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>
            亚欧美中日韩视频| 一卡二卡3卡四卡高清精品视频| 日韩午夜电影av| 国产精品扒开腿爽爽爽视频| 久久精品99国产精品日本| 国产精品进线69影院| 久久久高清一区二区三区| 国产精品你懂得| 91久久久在线| 欧美在线看片| 久久三级福利| 久久精品亚洲一区| 欧美成人蜜桃| 国产精品男gay被猛男狂揉视频| 欧美成人69av| 久久免费观看视频| 欧美一区二区三区久久精品| 欧美精品v国产精品v日韩精品| av不卡在线| 国产精品久久久999| 久久天天躁狠狠躁夜夜av| 久久久999成人| 国产专区精品视频| 久久亚洲不卡| 亚洲一区二区三区精品在线| 亚洲国产欧美一区二区三区同亚洲 | 久久久久网站| 国产精品大全| 日韩一二三在线视频播| 日韩一区二区精品在线观看| 欧美乱人伦中文字幕在线| 亚洲精品国产品国语在线app| 先锋影音网一区二区| 亚洲国产天堂久久综合网| 日韩写真视频在线观看| 亚洲香蕉在线观看| 六月婷婷一区| 久久精品一区蜜桃臀影院| 欧美午夜片在线免费观看| 亚洲精品国产日韩| 欧美国产免费| 亚洲国产91色在线| 久久精品网址| 欧美黄色小视频| 亚洲欧美激情诱惑| 久久午夜影视| 午夜精品亚洲| 午夜视频一区二区| 亚洲一区日韩| 一区视频在线看| 欧美成人精品影院| 欧美天天在线| 极品尤物久久久av免费看| 亚洲激情女人| 欧美日韩国产区| 国产欧美日韩综合一区在线观看| 最新日韩av| 久久精品中文字幕免费mv| 亚洲第一综合天堂另类专| 亚洲黄色一区二区三区| 亚洲一区二区三区777| 久久激情五月丁香伊人| 亚洲人成绝费网站色www| 久久亚洲综合色| 欧美成人午夜剧场免费观看| 91久久久久久国产精品| 嫩草国产精品入口| 中文一区二区| 欧美在线综合视频| 亚洲娇小video精品| 一区二区不卡在线视频 午夜欧美不卡'| 国产精品日韩精品欧美精品| 久久久久久免费| 欧美日韩国产小视频在线观看| 久久久久九九九| 亚洲日本中文字幕| 欧美成人网在线| 亚洲国产欧美日韩精品| 国产精品色婷婷久久58| 亚洲精品欧美在线| 夜夜嗨av一区二区三区四季av | 欧美一区成人| 久久久亚洲国产美女国产盗摄| 欧美日韩日日夜夜| 亚洲国产日韩欧美在线图片| 久久久999国产| 亚洲一区二区三区欧美| 欧美精品在线观看一区二区| 国产美女诱惑一区二区| 亚洲欧洲一区| 亚洲国产精品一区| 亚洲国产欧美一区二区三区久久 | 久久蜜桃香蕉精品一区二区三区| 国产一级揄自揄精品视频| 欧美高清在线播放| 国语自产精品视频在线看一大j8| 亚洲片在线观看| 亚洲精品黄色| 麻豆精品视频| 欧美刺激性大交免费视频| 农村妇女精品| 亚洲第一福利视频| 美日韩免费视频| 午夜国产精品视频| 亚洲精选久久| 久久激情五月丁香伊人| 亚洲毛片av| 亚洲欧美日韩一区二区在线 | 欧美日韩在线不卡一区| 久久成年人视频| 亚洲日韩成人| 国产一区二区电影在线观看| 久久综合久久综合久久| 欧美精品手机在线| 黄色精品一区二区| 欧美电影电视剧在线观看| 亚洲国产第一| 国产精品免费一区豆花| 欧美国产91| 久久久综合精品| 亚洲欧美日韩国产综合精品二区| 欧美激情一区二区三区不卡| 欧美中文字幕视频在线观看| 久久不射电影网| 国产精品亚发布| 欧美高清视频| 国产欧美一区二区三区久久| 性18欧美另类| 一本色道久久综合狠狠躁篇的优点| 国产精品每日更新| 亚洲观看高清完整版在线观看| 亚洲理伦电影| 久久亚洲综合网| 亚洲午夜一区二区| 亚洲视频在线观看视频| 亚洲高清视频在线| 国产精品一区二区在线观看| 另类亚洲自拍| 久久久久久噜噜噜久久久精品 | 国产精品综合久久久| 欧美肥婆在线| 欧美激情按摩| 毛片精品免费在线观看| 亚洲免费播放| 亚洲精选大片| 亚洲视频在线视频| 午夜伦欧美伦电影理论片| 一区二区三区精品视频在线观看| 亚洲黄色天堂| 中文精品一区二区三区| 亚洲一区二区三区精品在线观看| 99re在线精品| 黄色成人av网| 亚洲综合首页| 一区二区三区精密机械公司| 亚洲精品国产精品乱码不99按摩| 噜噜噜噜噜久久久久久91 | 亚洲午夜激情在线| 亚洲精品视频在线| 亚洲专区国产精品| 一区二区三区福利| 久久大逼视频| 亚洲欧洲三级| 久久精品日产第一区二区| 欧美freesex8一10精品| 国产美女搞久久| 在线观看欧美一区| 欧美在线观看一区二区| 亚洲精品少妇网址| 狂野欧美性猛交xxxx巴西| 欧美丝袜一区二区三区| 影音先锋日韩精品| 久久夜色精品国产噜噜av| 亚洲人成艺术| 牛牛影视久久网| 亚洲青色在线| 欧美 日韩 国产在线| 亚洲精品你懂的| 欧美黄色小视频| 欧美人与性动交cc0o| 国产综合香蕉五月婷在线| 夜夜嗨一区二区三区| 免费日韩一区二区| 久久国产精品久久久久久| 国产精品资源在线观看| 亚洲一区二区三区免费在线观看 | 久久精品理论片| 亚洲一区二区三区免费观看| 欧美日韩免费高清| 一区二区三区视频在线| 亚洲一区二区三区四区视频| 欧美午夜宅男影院在线观看| 在线中文字幕不卡| 亚洲校园激情| 一区二区三区在线视频免费观看| 欧美激情亚洲综合一区| 欧美天天综合网| 嫩草国产精品入口| 欧美午夜a级限制福利片| 国产精品国产三级国产专播精品人|