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

http://acm.hdu.edu.cn/showproblem.php?pid=2224
      貨郎問題(Traveling Salesman Problem,簡(jiǎn)稱“TSP”)也叫貨郎擔(dān)問題,中國(guó)郵路問題,旅行商問題等,是計(jì)算機(jī)算法理論歷史上的經(jīng)典問題。在過去幾十年中,它成為許多重要算法思想的測(cè)試平臺(tái),同時(shí)也促使一些新的理論領(lǐng)域的產(chǎn)生,比如多面體理論和復(fù)雜性理論。 貨郎問題:給定n個(gè)結(jié)點(diǎn)和任意一對(duì)結(jié)點(diǎn){i,j}之間的距離為dist(i,j),要求找出一條閉合的回路,該回路經(jīng)過每個(gè)結(jié)點(diǎn)一次且僅一次,并且該回路的費(fèi)用最小,這里的費(fèi)用是指每段路徑的距離和。 貨郎問題求解其精確解是NP難的,并且求解任意常數(shù)因子近以度的解也是NP難的。若將問題限定在歐氏平面上,就成為歐氏平面上的貨郎問題,也叫歐幾里德旅行商問題(Eculid Traveling Salesman Problem)。但是,即使是歐氏平面上的貨郎問題也是NP難的。因此通常用來解決TSP問題的解法都是近似算法。其中第一個(gè)歐幾里德旅行商問題的多項(xiàng)式近似算法是Arora在1996年使用隨機(jī)平面分割和動(dòng)態(tài)規(guī)劃方法給出的。

    J.L. Bentley 建議通過只考慮雙調(diào)旅程(bitonic tour)來簡(jiǎn)化問題,這種旅程即為從最左點(diǎn)開始,嚴(yán)格地從左到右直至最右點(diǎn),然后嚴(yán)格地從右到左直至出發(fā)點(diǎn)。事實(shí)上,存在確定的最優(yōu)雙調(diào)路線的O(n*n)時(shí)間的算法。

/**********************************************************************
*        Bitonic path (詳見《算法導(dǎo)論》 P217)                                                                                  
*        一個(gè)人從p1嚴(yán)格地增的走到pn,然后再嚴(yán)格遞減的回到p1;求總路徑的最小值;   
*        網(wǎng)上看到很多解題報(bào)告。。。看的我直冒汗     
*        只好自己看書,翻譯。。。                                                                  
*        對(duì)于1 <= i <= j <= n, 我們定義P(i, j)是一條包含了P1, P2, P3 …… Pj的途徑;                   
*        這條路徑可以分成2部分:遞減序列與遞增序列                                                                
*        起點(diǎn)是Pi(1 <= i <= j),拐點(diǎn)是P1,終點(diǎn)是Pj, P[i, j]為其最小值;                                     
*        狀態(tài)轉(zhuǎn)移方程為:                                                                                                                      
*        b[1,2] = |P1P2|,                                                                                                                               
*        i < j-1時(shí), b[i,j] = b[i,j-1] + |Pj-1Pj|    點(diǎn)Pj-1在遞增序列中,                                                
*        i = j-1時(shí), b[i,j] = min{ b[k,j-1] + |PkPj|, 1<= k < j-1 }  點(diǎn)Pj-1在遞減序列中                      
*        b[n,n] = b[n-1,n] + |Pn-1Pn|                                                                                                        
*********************************************************************
*/


#include 
<stdio.h>
#include 
<math.h>
#define INF 0x7fffffff
#define N 201
struct point{
    
double x, y;
}point[N];
int n;
double dis[N][N];

double distant(int i, int j)
{
    
return sqrt((point[i].x - point[j].x)*(point[i].x - point[j].x) + (point[i].y - point[j].y)*(point[i].y - point[j].y));
}

double dp()
{
    
int i, j, k;
    
double temp, b[N][N];

    b[
1][2= dis[1][2];
    
for (j=3; j<=n; j++)
    {
        
for (i=1; i<=j-2; i++)
            b[i][j] 
= b[i][j-1+ dis[j-1][j];

        b[j
-1][j] = INF;
        
for (k=1; k<=j-2; k++)
        {
            temp 
= b[k][j-1+ dis[k][j];
            
if (temp < b[j-1][j])
                b[j
-1][j] = temp;
        }
    }

    b[n][n] 
= b[n-1][n] + dis[n-1][n];

    
return b[n][n];
}

int main()
{
    
int i, j;
    
double ans;
    
while (scanf("%d"&n) > 0)
    {
        
for (i=1; i<=n; i++)
            scanf(
"%lf %lf"&point[i].x, &point[i].y);

        
for (j=2; j<=n; j++)
            
for (i=1; i<j; i++)
                dis[i][j] 
= distant(i,j); 

        ans 
= dp();

        printf(
"%.2lf\n", dp());
    }
}

 


 

posted on 2009-11-30 18:38 西風(fēng)蕭瑟 閱讀(6990) 評(píng)論(3)  編輯 收藏 引用 所屬分類: 動(dòng)態(tài)規(guī)劃

評(píng)論:
# re: PKU2677,HDU2224 經(jīng)典DP之雙調(diào)旅行商(TSP) 2009-12-01 15:21 | 創(chuàng)意產(chǎn)品批發(fā)
佩服佩服。。。  回復(fù)  更多評(píng)論
  
# re: PKU2677,HDU2224 經(jīng)典DP之雙調(diào)旅行商(TSP) 2012-05-24 10:12 | aaa
* b[1,2] = |P1P2|,
* i = j-1時(shí), b[i,j] = b[i,j-1] + |Pj-1Pj| 點(diǎn)Pj-1在遞增序列中,
* i < j-1時(shí), b[i,j] = min{ b[k,j-1] + |PkPj|, 1<= k < j-1 } 點(diǎn)Pj-1在遞減序列中
* b[n,n] = b[n-1,n] + |Pn-1Pn|   回復(fù)  更多評(píng)論
  
# re: PKU2677,HDU2224 經(jīng)典DP之雙調(diào)旅行商(TSP) 2012-10-09 22:43 | keli
狀態(tài)轉(zhuǎn)移方程為:
* b[1,2] = |P1P2|,
* i < j-1時(shí), b[i,j] = b[i,j-1] + |Pj-1Pj| 點(diǎn)Pj-1在遞增序列中,
* i = j-1時(shí), b[i,j] = min{ b[k,j-1] + |PkPj|, 1<= k < j-1 } 點(diǎn)Pj-1在遞減序列中
* b[n,n] = b[n-1,n] + |Pn-1Pn|

==================
當(dāng)i = j-1時(shí),狀態(tài)轉(zhuǎn)移方程應(yīng)該是:
b[i,j] = min{ b[j-1, k] + |PkPj|, 1 <= k < j-1 }吧,
雖然b[j-1, k] == b[k, j-1],但是我上面寫的才是合理的吧?  回復(fù)  更多評(píng)論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲黄页视频免费观看| 欧美日韩一区二区精品| 欧美电影电视剧在线观看| 久久久久久亚洲精品中文字幕| 亚洲性av在线| 欧美一站二站| 久久久久久久久一区二区| 久久精品最新地址| 欧美波霸影院| 亚洲毛片av在线| 亚洲在线成人| 欧美制服丝袜| 欧美肥婆在线| 国产日韩欧美成人| 亚洲国产99精品国自产| 亚洲一区二区精品视频| 欧美亚洲一级片| 欧美成人精品一区| 国产精品色婷婷| 亚洲国产日韩欧美一区二区三区| 亚洲精品在线观| 久久爱91午夜羞羞| 亚洲激情女人| 欧美一区二区高清| 欧美精品在线观看一区二区| 国产欧美日韩一区二区三区在线观看 | 欧美图区在线视频| 韩国一区二区在线观看| 亚洲肉体裸体xxxx137| 亚洲欧美视频在线观看视频| 久久综合给合| 亚洲一区二区精品在线| 欧美精品麻豆| 精品动漫3d一区二区三区免费| av成人免费在线观看| 久久人人看视频| 在线一区视频| 欧美精品在线一区| 一区视频在线| 欧美一区二区私人影院日本| 亚洲黄色在线看| 免费日韩精品中文字幕视频在线| 国产午夜精品一区二区三区视频| 亚洲午夜国产成人av电影男同| 欧美国产国产综合| 欧美亚洲系列| 国产一区二区三区日韩| 亚洲欧美激情诱惑| 99精品福利视频| 欧美另类人妖| 一区二区三区**美女毛片| 亚洲视频综合| 欧美一区二视频| 国产精品一区在线播放| 亚洲一区二区精品在线| 亚洲精选在线| 欧美日韩一二三区| av72成人在线| 日韩一级成人av| 欧美日韩精品免费观看视一区二区| 亚洲大胆女人| 亚洲国产91精品在线观看| 久久天堂成人| 亚洲国产精品久久久久婷婷884 | 国产精品素人视频| 亚洲欧美亚洲| 午夜精品久久久久久久久久久久久| 亚洲在线观看| 国产欧美精品一区| 久久久久综合网| 久久一区二区三区四区| 在线视频成人| 亚洲国产mv| 欧美日韩一级黄| 亚洲免费在线观看| 午夜免费电影一区在线观看| 国内精品久久久久久久影视麻豆 | 欧美日韩一级黄| 亚洲欧美日韩精品在线| 亚洲欧美韩国| 伊人婷婷久久| 91久久精品日日躁夜夜躁欧美| 欧美大片一区二区| 亚洲专区欧美专区| 欧美在线视频a| 亚洲欧洲三级| 亚洲一区亚洲| 亚洲国产精品久久久久婷婷884| 亚洲精品乱码| 国产欧美一区二区视频| 免费一区二区三区| 欧美日韩综合精品| 久久久久久久久综合| 欧美精品免费在线| 久久激情婷婷| 牛牛国产精品| 欧美一区视频在线| 免费美女久久99| 久久国内精品视频| 欧美三级在线| 老色批av在线精品| 欧美三级在线视频| 欧美高清视频在线播放| 国产伦精品一区二区三区照片91 | 美女露胸一区二区三区| 欧美精品高清视频| 久久精品一区二区三区不卡牛牛| 欧美二区在线播放| 久久久综合网站| 欧美性片在线观看| 免费在线国产精品| 国产精品人人爽人人做我的可爱| 欧美成人中文| 宅男精品视频| 亚洲第一天堂av| 先锋资源久久| 亚洲免费视频网站| 欧美片第1页综合| 亚洲动漫精品| 狠狠色丁香婷婷综合影院| 这里只有精品视频| 99天天综合性| 欧美成人免费播放| 久久视频在线免费观看| 国产欧美一区二区三区沐欲| 在线亚洲欧美专区二区| 亚洲精品中文字幕在线| 久久综合久久久| 欧美a级理论片| 悠悠资源网久久精品| 性色av香蕉一区二区| 亚洲欧美在线另类| 国产精品福利片| 在线亚洲高清视频| 亚洲欧美成人一区二区三区| 欧美日韩性生活视频| 日韩亚洲国产欧美| 一区二区三区精品国产| 欧美日韩精品在线观看| 99re6热在线精品视频播放速度| 亚洲韩国一区二区三区| 欧美成人情趣视频| 亚洲国产欧美精品| 99精品热视频| 国产精品对白刺激久久久| 亚洲图片欧洲图片av| 欧美呦呦网站| 一区二区三区在线免费观看| 久久久久一区二区三区四区| 欧美黄免费看| 在线视频精品| 国产欧美另类| 久久综合狠狠| 99精品福利视频| 久久久久久一区| 亚洲精品视频在线播放| 欧美视频一区二区三区四区| 亚洲欧美日韩精品一区二区| 久久一区二区三区国产精品| 亚洲激情婷婷| 国产精品第13页| 久久久久国内| 99re8这里有精品热视频免费 | 欧美日韩精品一区二区天天拍小说 | 久久精品网址| 亚洲国产精品第一区二区| 亚洲国产精品va在线看黑人动漫 | 亚洲一区美女视频在线观看免费| 欧美一区二区三区四区夜夜大片 | 国产在线视频欧美一区二区三区| 久久视频这里只有精品| 99ri日韩精品视频| 久久蜜臀精品av| 99re8这里有精品热视频免费| 国产精品毛片高清在线完整版| 久久久久久有精品国产| 亚洲国产婷婷香蕉久久久久久| 午夜精品久久久久| 亚洲黄色性网站| 国产农村妇女精品| 女人香蕉久久**毛片精品| 亚洲你懂的在线视频| 91久久久久久久久久久久久| 欧美亚洲一区在线| 亚洲精品在线视频观看| 国模吧视频一区| 国产精品久久久久久久久久免费 | 久久综合狠狠综合久久综合88| av不卡在线观看| 一区二区在线观看av| 国产精品久久久久999| 麻豆91精品91久久久的内涵| 午夜精品久久久久久久蜜桃app| 亚洲欧洲日韩在线| 狂野欧美激情性xxxx| 久久精品免费| 午夜精品在线看| 亚洲综合国产激情另类一区| 亚洲精品乱码| 亚洲日韩欧美一区二区在线|