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

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 閱讀(830) 評論(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>
            国产精品女人网站| 亚洲人永久免费| 欧美在线视频观看| 一区二区三区视频在线播放| 亚洲欧美激情四射在线日 | 欧美伊人久久大香线蕉综合69| 亚洲欧洲精品一区二区三区不卡 | 欧美在线地址| 久久久久久久网| 久久先锋影音av| 麻豆av一区二区三区久久| 美女被久久久| 亚洲欧洲中文日韩久久av乱码| 亚洲巨乳在线| 亚洲午夜三级在线| 久久成人羞羞网站| 欧美成人日本| 国产精品日日做人人爱 | 亚洲视频免费在线观看| 亚洲一区日本| 免费欧美网站| 这里只有精品视频| 久久久久国内| 欧美日韩一区二区三区视频 | 国产精品香蕉在线观看| 伊人婷婷久久| 亚洲图片自拍偷拍| 久久久久久一区二区| 最新日韩在线| 久久精品成人欧美大片古装| 欧美日韩国产页| 国产一区二区三区的电影 | 国产九九精品| 亚洲人成网站在线观看播放| 香蕉av777xxx色综合一区| 欧美激情小视频| 国产精品捆绑调教| 亚洲大胆人体视频| 亚洲一级片在线观看| 欧美va天堂| 午夜精品久久久久久久99水蜜桃 | 欧美精品在线免费观看| 国产一区av在线| 亚洲亚洲精品在线观看| 亚洲高清在线| 久久久999国产| 国产精品综合久久久| 日韩亚洲一区二区| 免费欧美视频| 欧美一区二区免费观在线| 欧美色图一区二区三区| 亚洲三级色网| 欧美激情国产日韩| 久久久久久久综合| 国产伊人精品| 久久不射2019中文字幕| 一本高清dvd不卡在线观看| 欧美精品一区二区精品网| 亚洲成人资源网| 久久亚洲欧美国产精品乐播| 午夜在线视频一区二区区别| 国产精品久久久久高潮| 国产精品99久久99久久久二8 | 欧美日韩另类一区| 亚洲人成网站在线播| 亚洲国产精品综合| 久久综合综合久久综合| 伊人精品久久久久7777| 猛干欧美女孩| 久久亚洲综合网| 亚洲电影有码| 欧美激情亚洲激情| 欧美激情网友自拍| 亚洲一区二区三区色| 一本大道久久a久久精品综合| 国产精品porn| 欧美怡红院视频一区二区三区| 亚洲一区二区免费看| 国产伦精品一区二区| 久久久xxx| 久久这里只有精品视频首页| 亚洲乱码国产乱码精品精98午夜| 亚洲国产专区校园欧美| 欧美激情亚洲激情| 亚洲免费视频在线观看| 亚洲一区精品视频| 黄色综合网站| 亚洲日本中文| 国产精品久久久久久久9999| 国产一区白浆| 欧美不卡福利| 欧美精品一区二区久久婷婷| 亚洲制服av| 久久精品一区二区三区不卡| 亚洲毛片在线看| 亚洲一区二区三区四区中文 | 91久久久久久久久| 一区二区三区蜜桃网| 国产一区二区三区av电影| 欧美激情一二区| 国产精品人成在线观看免费| 免费日韩av| 欧美性色aⅴ视频一区日韩精品| 欧美一区二区三区在线视频| 美女露胸一区二区三区| 亚洲无线视频| 久久中文精品| 欧美一级在线亚洲天堂| 嫩草国产精品入口| 欧美在线看片| 欧美日韩国产电影| 美日韩精品视频| 国产精品v日韩精品| 欧美肥婆在线| 国产精品一区二区女厕厕| 亚洲国产精选| 亚洲国产精品电影在线观看| 先锋影音国产精品| 亚洲图片激情小说| 欧美成人精品影院| 久久久久久亚洲精品杨幂换脸| 欧美色另类天堂2015| 欧美r片在线| 在线播放中文字幕一区| 亚洲免费影院| 在线一区二区三区四区| 欧美jizz19性欧美| 久久综合中文字幕| 国产色视频一区| 亚洲午夜精品福利| 亚洲视频一区二区在线观看| 欧美成人精品不卡视频在线观看| 久热精品在线视频| 国内精品视频久久| 欧美一区高清| 久久精品免费观看| 国产乱肥老妇国产一区二| 一本色道久久综合亚洲精品不| 亚洲精品一二| 欧美高潮视频| 91久久久在线| 一区二区三区欧美成人| 欧美精品99| 日韩视频永久免费观看| av不卡在线| 欧美日韩亚洲一区二区三区四区| 亚洲国产欧美日韩另类综合| 亚洲美女免费视频| 欧美日韩福利在线观看| 亚洲精品日韩精品| 99在线热播精品免费99热| 欧美ed2k| 亚洲高清不卡在线| 欧美精品18| 一本久久综合亚洲鲁鲁五月天| 亚洲一区视频| 国产欧美精品久久| 欧美在线亚洲综合一区| 乱人伦精品视频在线观看| 亚洲区国产区| 欧美日韩中文字幕精品| 亚洲伊人伊色伊影伊综合网| 欧美资源在线| 亚洲高清123| 欧美日韩国产一区精品一区| 亚洲一区二区三区三| 久久青草欧美一区二区三区| 狠狠色综合播放一区二区| 欧美成人免费在线| 亚洲人午夜精品| 在线亚洲一区| 香蕉久久久久久久av网站| 亚洲在线一区二区三区| 国产精品视频区| 亚洲综合色视频| 欧美一区二区精品在线| 国产视频一区在线观看一区免费| 欧美一区二区视频在线| 久久这里有精品视频| 亚洲国产高潮在线观看| 裸体素人女欧美日韩| 欧美激情一区| 一区二区电影免费观看| 国产精品av久久久久久麻豆网| 亚洲一区网站| 久久综合伊人77777蜜臀| 亚洲精品乱码久久久久久蜜桃91| 欧美日韩免费一区二区三区视频| 午夜天堂精品久久久久| 亚洲三级视频| 美女视频黄 久久| 亚洲欧美日韩区| 亚洲毛片av在线| 狠狠88综合久久久久综合网| 国产精品国产成人国产三级| 欧美国产日韩精品免费观看| 久久精品一区二区三区中文字幕| 正在播放亚洲一区| 亚洲国产美女久久久久| 久久视频这里只有精品|