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

voip
風的方向
厚德致遠,博學敦行!
posts - 52,comments - 21,trackbacks - 0
        最近我在掙扎,都工作的人了還念念不忘ACM,是不是太閑了!!!我發現我喜歡數學,我喜歡做邏輯一點的事情,不會很復雜,一切符合邏輯了才好處理。。。
      不扯淡了!看下題目吧!
      

Description

A triangle field is numbered with successive integers in the way shown on the picture below.



The traveller needs to go from the cell with number M to the cell with number N. The traveller is able to enter the cell through cell edges only, he can not travel from cell to cell through vertices. The number of edges the traveller passes makes the length of the traveller's route.



Write the program to determine the length of the shortest route connecting cells with numbers N and M.

 

Input

Input contains two integer numbers M and N in the range from 1 to 1000000000 separated with space(s).

Output

Output should contain the length of the shortest route.

Sample Input

6 12 

 

Sample Output

3

 

Source

Ural Collegiate Programming Contest 1998


      這是我大學里真正老師教的第一個題目,在我映像里老師很犀利,幾句話就把題目意思和解題思路講清楚了,老師追求的是效率,現在想起來是這樣的!但是我當時并沒有怎么聽懂,回去也沒好好研究過,直到后來老師給答案了才粗粗的看了一下,知道了解題思路,但是自己又沒去寫過,再后來有一天我發現了這個題目把它干掉了。。。

      題目大意:從右側三角中任去兩個數,求他們之間的最短路勁。例如取出3和7他們之間的最短路勁為3,6到12他們之間的最短路勁為3。。

      解題思路:
                           1、很明顯我們可以求出給出的兩個數的行號和列號;
                           2、思考怎么走才算是最短,在一個三角形中頂點上的數走到下邊行中的奇數列的最短路徑是相等的,例如:1走到2,4;1走到5,7,9;1走到11,13,15;偶數列也同樣!根據這一點我們可以用較小的數構造一個最小上三角,然后一層層往下映射,求出最短路勁,直到到達較大數所在行!如果該數在映射三角中,直接輸出,否者,從映射三角的最右端或者最左端往右走或者往左走!
      寫代碼的時候需要注意的幾點:
                           1、M,N的數據比較大,在計算的時候可能會超出int范圍,最好用__int64;
                           2、構造三角的時候,如果較小數在奇數列,可以直接向下映射,如果是偶數的話,可以向上翻,最后結果減1就行;
                           3、事實上我們可以根據已知行號和列號,直接求得在大數行上的映射三角的最短路勁;
       代碼如下(老師給的):

#include<stdio.h>
#include
<math.h>
__int64 leve(__int64 x)   
{
    
double y;
    __int64 k;
    
if(x==1)
        
return 1;
    
else
    
{
        y
=sqrt(x);
        k
=sqrt(x);
        
if(y==k)
            
return k;
        
else
            
return k+1;
    }

}

int main()
{
    __int64 n,m,temp,ln,lm,pm,pn,tm,mr,ml,tlm,len;
    
while(scanf("%I64d %I64d",&m,&n)!=EOF)
    
{
        
if(m>n)
        
{
            temp
=n;
            n
=m;
            m
=temp;
        }

        
//求的行號和列號
        lm=leve(m);
        ln
=leve(n);
        pm
=m-(lm-1)*(lm-1);
        pn
=n-(ln-1)*(ln-1);
            
        
if(lm==ln) //同行,直接輸出
            printf("%I64d\n",pn-pm);
        
else
        
{
            tm
=(pm%2)?m:(m-2*(lm-1));  //求的三角形頂點數,偶數的往上翻一下
            tlm=leve(tm);            
            ml
=tm+(ln+tlm-2)*(ln-tlm); //求得映射三角在較大數所在行的最左側數
            mr=tm+(ln+tlm)*(ln-tlm);   //求得映射三角在較大數所在行的最右側數
            if(ml<=n&&n<=mr)           //若較大數在區間內,則求的結果
                len=(pn%2)?(2*(ln-tlm)):(2*(ln-tlm)-1);
            
else                        //否則再向左走或者向右走
            {
                len
=2*(ln-tlm);
                
if(n<ml)
                    len
+=(ml-n);
                
if(n>mr)
                    len
+=(n-mr);
            }

            
if(pm%2==0)                  //偶數減回去!!!
                len--;
            printf(
"%I64d\n",len);
        }

    }

    
return 0;
}



      

posted on 2010-08-29 17:03 jince 閱讀(834) 評論(0)  編輯 收藏 引用 所屬分類: Questions
哈哈哈哈哈哈
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            噜噜噜噜噜久久久久久91| 欧美精品电影| 国语精品一区| 久久蜜桃香蕉精品一区二区三区| 亚洲欧美视频在线观看| 国内精品嫩模av私拍在线观看| 久久久久久久性| 久久久久久有精品国产| 亚洲国产精品久久久久秋霞影院 | 国产最新精品精品你懂的| 久久免费精品视频| 玖玖玖国产精品| 一个色综合av| 亚洲综合色婷婷| 国内自拍一区| 亚洲欧洲日夜超级视频| 欧美日韩国产综合一区二区| 午夜宅男久久久| 久久久久久一区二区三区| 亚洲精品在线二区| 亚洲综合久久久久| 亚洲大胆女人| 在线亚洲精品福利网址导航| 国产综合色在线视频区| 欧美激情一区| 国产日本欧洲亚洲| 91久久综合| 国产亚洲女人久久久久毛片| 欧美大胆成人| 国产日韩精品电影| 亚洲黄色在线看| 国产日韩欧美一区二区| 亚洲激情电影中文字幕| 国产午夜一区二区三区| 亚洲人体偷拍| 在线成人av.com| 亚洲视频www| 91久久中文字幕| 欧美影院在线| 亚洲综合日韩| 欧美福利视频| 欧美chengren| 国产亚洲成年网址在线观看| 亚洲黄色片网站| 亚洲电影观看| 久久精品99久久香蕉国产色戒| 亚洲视频高清| 欧美激情一区二区| 欧美成人精品影院| 国产偷久久久精品专区| 亚洲桃色在线一区| 国产精品99久久久久久久久| 免费欧美在线视频| 女女同性精品视频| 黄色成人在线免费| 午夜亚洲福利| 欧美一区=区| 国产精品三级久久久久久电影| 亚洲日本中文字幕| 亚洲国产另类久久久精品极度| 亚洲欧美日韩国产成人| 亚洲欧美国产三级| 国产精品高潮粉嫩av| 日韩午夜在线播放| 一区二区三区 在线观看视频| 美女爽到呻吟久久久久| 欧美成人亚洲| 亚洲国产一区二区三区在线播| 久久久久这里只有精品| 蜜桃av一区二区三区| 在线播放中文字幕一区| 久久视频免费观看| 欧美波霸影院| 亚洲精品一二区| 欧美日本在线一区| 99精品国产高清一区二区| 亚洲视频免费| 国产伦理精品不卡| 久久精品视频在线| 美脚丝袜一区二区三区在线观看| 一区在线观看视频| 免费美女久久99| 日韩一级黄色大片| 性视频1819p久久| 国产在线国偷精品产拍免费yy| 久久国产免费| 亚洲黄一区二区| 亚洲永久在线| 韩国亚洲精品| 欧美激情精品久久久六区热门| 亚洲美女在线看| 羞羞色国产精品| 在线观看视频一区| 欧美日韩黄视频| 午夜视黄欧洲亚洲| 亚洲高清不卡在线| 午夜精品免费视频| 亚洲国产成人高清精品| 欧美日韩一区二区欧美激情 | 亚洲手机视频| 久久久亚洲精品一区二区三区| 亚洲国产成人久久综合| 欧美日本国产| 久久激情视频免费观看| 亚洲国产精品一区二区久| 香蕉久久久久久久av网站| 尤物在线精品| 国产精品女主播一区二区三区| 久久黄色影院| 亚洲无限av看| 亚洲国产高清视频| 久久精品国产第一区二区三区最新章节 | 国产精品久久久一区二区| 久久国产加勒比精品无码| 亚洲精品偷拍| 乱中年女人伦av一区二区| 一区二区三区视频免费在线观看| 国产一区二区按摩在线观看| 欧美精品一区二区三区蜜桃| 久久本道综合色狠狠五月| 99综合在线| 亚洲大片在线观看| 久久久噜噜噜久久狠狠50岁| 99视频精品在线| 亚洲国产精品一区二区尤物区| 国产精品一区二区久激情瑜伽| 老司机久久99久久精品播放免费| 亚洲综合导航| 日韩亚洲不卡在线| 亚洲国产电影| 欧美xart系列高清| 久久免费视频网站| 欧美亚洲一区二区三区| 一本色道久久综合| 亚洲精品在线观看视频| 在线观看不卡av| 国内视频精品| 国产一区二区三区无遮挡| 国产精品欧美在线| 欧美日韩日韩| 欧美日韩免费一区二区三区| 免费在线视频一区| 蜜桃久久av一区| 乱人伦精品视频在线观看| 久久国产欧美日韩精品| 欧美一区二区在线| 亚洲欧美日韩国产成人精品影院| 日韩一级精品| 夜夜嗨av一区二区三区四季av | 亚洲黑丝在线| 91久久香蕉国产日韩欧美9色| 蜜臀av一级做a爰片久久| 久久女同精品一区二区| 先锋资源久久| 欧美一区在线直播| 久久久av水蜜桃| 裸体歌舞表演一区二区| 久热精品视频在线观看| 久久天堂av综合合色| 欧美成人xxx| 亚洲电影在线免费观看| 亚洲肉体裸体xxxx137| 亚洲三级免费| 宅男66日本亚洲欧美视频| 中文av一区二区| 欧美一级播放| 久久影院亚洲| 欧美日韩国产电影| 国产精品久久久久久久久免费 | 国产欧美精品日韩区二区麻豆天美| 国产欧美一区二区精品婷婷| 国产婷婷色一区二区三区| 极品尤物久久久av免费看| 亚洲精品乱码| 午夜精品一区二区三区在线播放 | 亚洲欧美日韩在线综合| 久久精品亚洲一区二区| 暖暖成人免费视频| 99国产精品久久久| 亚洲欧美日韩国产一区二区| 久久国产福利| 欧美日韩高清在线播放| 欧美午夜宅男影院| 永久免费视频成人| 亚洲天堂av在线免费观看| 欧美在线播放高清精品| 欧美成人a视频| 亚洲视频一区| 久久久在线视频| 欧美日韩另类视频| 狠狠色狠狠色综合日日tαg| 亚洲免费观看高清在线观看 | 久久久亚洲一区| 亚洲精品色图| 久久青草欧美一区二区三区| 国产精品a级| 日韩视频免费在线观看| 久久精品免费播放| 亚洲美女黄网| 麻豆91精品91久久久的内涵|