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

ACM___________________________

______________白白の屋
posts - 182, comments - 102, trackbacks - 0, articles - 0
<2011年8月>
31123456
78910111213
14151617181920
21222324252627
28293031123
45678910

常用鏈接

留言簿(24)

隨筆分類(332)

隨筆檔案(182)

FRIENDS

搜索

積分與排名

最新隨筆

最新評論

閱讀排行榜

評論排行榜

MiYu原創, 轉帖請注明 : 轉載自 ______________白白の屋

題目地址:
         http://acm.hdu.edu.cn/showproblem.php?pid=1874
題目描述:
暢通工程續
Time Limit: 
3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 
5528    Accepted Submission(s): 1686


Problem Description
某省自從實行了很多年的暢通工程計劃后,終于修建了很多路。不過路多了也不好,每次要從一個城鎮到另一個城鎮時,都有許多種道路方案可以選擇,而某些方案要比另一些方案行走的距離要短很多。這讓行人很困擾。

現在,已知起點和終點,請你計算出要從起點到終點,最短需要行走多少距離。
 

Input
本題目包含多組數據,請處理到文件結束。
每組數據第一行包含兩個正整數N和M(
0<N<200,0<M<1000),分別代表現有城鎮的數目和已修建的道路的數目。城鎮分別以0~N-1編號。
接下來是M行道路信息。每一行有三個整數A,B,X(
0<A,B<N,A!=B,0<X<10000),表示城鎮A和城鎮B之間有一條長度為X的雙向道路。
再接下一行有兩個整數S,T(
0<=S,T<N),分別代表起點和終點。
 

Output
對于每組數據,請在一行里輸出最短需要行走的距離。如果不存在從S到T的路線,就輸出
-1.

 

Sample Input
3 3
0 1 1
0 2 3
1 2 1
0 2
3 1
0 1 1
1 2
 

Sample Output
2
-1

題目分析:
最短路的入門題目.

Dijkstra算法的基本思路是:

         假設每個點都有一對標號 (dj, pj),其中dj是從起源點s到點j的最短路徑的長度 (從頂點到其本身的最短路徑是零路(沒有弧的路),其長度等于零);

pj則是從s到j的最短路徑中j點的前一點。求解從起源點s到點j的最短路徑算法的基本過程如下:

  1) 初始化。起源點設置為:① ds=0, ps為空;② 所有其他點: di=∞, pi=?;③ 標記起源點s,記k=s,其他所有點設為未標記的。

  2) 檢驗從所有已標記的點k到其直接連接的未標記的點j的距離,并設置:


dj=min[dj, dk+lkj]


式中,lkj是從點k到j的直接連接距離。

  3) 選取下一個點。從所有未標記的結點中,選取dj 中最小的一個i:


di=min[dj, 所有未標記的點j]


點i就被選為最短路徑中的一點,并設為已標記的。

  4) 找到點i的前一點。從已標記的點中找到直接連接到點i的點j*,作為前一點,設置:i=j*

  5) 標記點i。如果所有點已標記,則算法完全推出,否則,記k=i,轉到2) 再繼續。


代碼如下:
#include <iostream>
using namespace std;
const int MAX = 201;
const int INF = 0x7FFFFFF;
int graph[MAX][MAX];    
bool hash[MAX];
int path[MAX];
int N,M;
int Dijkstra ( int beg , int end )
{
    path[beg] 
= 0;
    hash[beg] 
= false;
    
while ( beg != end )
    {
            
int m = INF, temp;
            
for ( int i = 0; i != N; ++ i )
            {
                  
if ( graph[beg][i] != INF )
                       path[i] 
= min ( path[i], path[beg] + graph[beg][i] );
                  
if ( m > path[i] && hash[i] )
                  {
                       m 
= path[i];
                       temp 
= i; 
                  }           
            }
            beg 
= temp;
            
if ( m == INF )
                 
break;
            hash[beg] 
= false;
    }
    
if ( path[end] == INF )
         
return -1;
    
return path[end]; 
}
int main ()
{
    
while ( scanf ( "%d%d"&N, &M ) != EOF )
    {
            
for ( int i = 0; i != MAX; ++ i )
            {
                  hash[i] 
= true;
                  path[i] 
= INF;
                  
for ( int j = 0; j != MAX; ++ j )
                  {
                        graph[i][j] 
= INF;        
                  }
            } 
            
for ( int i = 0; i != M; ++ i )
            {
                  
int c1,c2,cost;
                  scanf ( 
"%d%d%d",&c1, &c2, &cost );
                  
if ( cost < graph[c1][c2] )
                       graph[c1][c2] 
= graph[c2][c1] = cost;      
            }
            
int beg,end;
            scanf ( 
"%d%d",&beg, &end );
            cout 
<< Dijkstra ( beg,end ) << endl;
    }
    
return 0
}
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            久久精品中文字幕一区| 99精品99| 一区二区三区.www| 亚洲激情av| 亚洲精品乱码久久久久| 亚洲国产福利在线| 亚洲精品一区二区三区婷婷月| 亚洲国内欧美| 一区二区欧美亚洲| 亚洲欧美色婷婷| 久久精品国产亚洲高清剧情介绍| 久久久久国产一区二区三区四区| 久久视频国产精品免费视频在线 | 亚洲女人天堂成人av在线| 亚洲一区视频在线| 久久综合久久综合久久| 欧美日韩国产免费观看| 国产亚洲欧美另类中文| 亚洲电影av| 亚洲制服av| 欧美成人午夜激情在线| 亚洲图片在线观看| 久久偷窥视频| 欧美日韩精品在线播放| 国产在线观看精品一区二区三区| 亚洲第一福利在线观看| 午夜精品久久久99热福利| 欧美va亚洲va日韩∨a综合色| 99国产精品国产精品久久| 久久精品日韩欧美| 欧美色一级片| 亚洲国产免费看| 久久久久九九视频| 亚洲视频一二区| 欧美国产欧美亚州国产日韩mv天天看完整| 国产精品久久一级| 亚洲伦理久久| 欧美福利影院| 欧美专区18| 国产精品久久久久一区二区| 亚洲人体影院| 卡通动漫国产精品| 午夜精品一区二区三区在线播放| 欧美久久影院| 羞羞色国产精品| 欧美日韩国产美| 一区二区久久| 亚洲日韩欧美一区二区在线| 亚洲永久精品大片| 欧美性大战久久久久| 999亚洲国产精| 亚洲高清成人| 蜜桃精品久久久久久久免费影院| 国产一区二区三区四区| 久久大逼视频| 先锋影音国产精品| 国产欧美一区二区三区另类精品 | 老司机一区二区三区| 亚洲欧美国产日韩天堂区| 欧美视频中文字幕| 99国产精品久久久久久久久久 | 很黄很黄激情成人| 久久久久久久久久码影片| 亚洲欧美清纯在线制服| 国产精品你懂的在线欣赏| 亚洲一区二区三区色| 日韩一区二区精品在线观看| 欧美日韩久久| 亚洲免费在线视频| aa亚洲婷婷| 国产精品国产三级国产普通话三级| 亚洲欧洲日本国产| 亚洲精品国产品国语在线app| 久久婷婷一区| 亚洲靠逼com| 亚洲精品一区二区在线观看| 欧美日韩另类综合| 欧美综合国产精品久久丁香| 午夜欧美电影在线观看| 国产一区深夜福利| 麻豆成人91精品二区三区| 免费久久99精品国产自| 日韩视频一区二区三区| 一区二区三区国产精华| 国产亚洲二区| 欧美国产精品日韩| 欧美日一区二区在线观看| 欧美一级成年大片在线观看| 久久国产精品一区二区三区四区 | 亚洲黄色免费| 国产精品xvideos88| 久久久久久久久一区二区| 久久嫩草精品久久久精品| 亚洲精品乱码视频| 亚洲女同性videos| 亚洲美女中文字幕| 午夜精品国产| 亚洲免费精彩视频| 亚洲无人区一区| 久久成人免费| 一区二区三区黄色| 久久久久免费视频| 亚洲在线一区| 欧美搞黄网站| 久久漫画官网| 国产精品萝li| 最新中文字幕一区二区三区| 国产伊人精品| 亚洲一区尤物| 亚洲午夜视频在线观看| 久久精品亚洲热| 亚洲小视频在线观看| 久久综合久色欧美综合狠狠| 性欧美激情精品| 久久日韩精品| 久久天天躁狠狠躁夜夜av| 国产精品美女久久久免费 | 亚洲人成网在线播放| 国产精品久久久免费| 亚洲三级影院| 亚洲精品一二区| 久久婷婷国产综合国色天香| 久久久久久电影| 国产日韩欧美视频| 亚洲欧美99| 亚洲欧美日韩另类| 欧美日韩精品一区二区天天拍小说| 欧美电影打屁股sp| 伊人成年综合电影网| 亚洲在线一区二区三区| 亚洲一本视频| 欧美视频网址| 亚洲人成在线免费观看| 亚洲黄色成人| 久久国产婷婷国产香蕉| 欧美影片第一页| 国产精品一国产精品k频道56| 亚洲国产精品久久| 亚洲精品美女| 欧美视频福利| 亚洲香蕉网站| 久久久久九九九| 国产综合网站| 欧美一区二区三区喷汁尤物| 亚洲网站在线播放| 国产精品永久免费视频| 亚洲视频欧美在线| 欧美一区二区三区在线视频 | 欧美专区18| 另类专区欧美制服同性| 91久久国产精品91久久性色| 欧美成人亚洲成人日韩成人| 亚洲精品乱码久久久久久日本蜜臀| 在线亚洲伦理| 国产精品网站视频| 久久精品免视看| 亚洲激情图片小说视频| 亚洲一级影院| 国产欧美日韩免费| 久久人人爽爽爽人久久久| 最近中文字幕日韩精品| 亚洲一级影院| 永久久久久久| 欧美日韩午夜视频在线观看| 久久免费视频在线| 伊人一区二区三区久久精品| 欧美 日韩 国产一区二区在线视频| 亚洲日本久久| 久久精品国产第一区二区三区最新章节| 韩国一区二区在线观看| 欧美另类综合| 性娇小13――14欧美| 亚洲黄色大片| 久久久福利视频| 亚洲最新视频在线| 韩国三级电影久久久久久| 欧美精品日日鲁夜夜添| 欧美亚洲三区| 亚洲欧洲一区二区在线观看| 欧美一区二区视频在线观看2020| 亚洲高清视频一区| 欧美视频免费| 老司机一区二区| 性欧美暴力猛交另类hd| 日韩一级在线| 亚洲黄色尤物视频| 久久久欧美一区二区| 亚洲伊人久久综合| 最新国产成人在线观看| 国产精品区二区三区日本| 欧美另类99xxxxx| 欧美xxx成人| 久久欧美肥婆一二区| 亚洲一级在线观看| 亚洲黄色在线看| 免费在线欧美黄色| 久久久久综合一区二区三区| 亚洲影视在线| 中文av字幕一区| 99视频超级精品|