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

posts - 43,  comments - 9,  trackbacks - 0

最近做了兩道floyd變種的題目,又加深了對(duì)floyd原理的理解.

第2題: tju 3214 Find the Path
http://acm.tju.edu.cn/toj/showp3214.html

題目大意是給一個(gè)無向圖,每個(gè)結(jié)點(diǎn)有個(gè)點(diǎn)權(quán)c[p]
對(duì)于查詢的點(diǎn)對(duì)i,j和權(quán)k,求在中間節(jié)點(diǎn)(不包含端點(diǎn)i,j)權(quán)值不大于k的限制下,i,j間最短路徑.
由于查詢次數(shù)多,因此一次查詢復(fù)雜度需要在O(logn)以內(nèi).考慮計(jì)算出所有點(diǎn)對(duì)在所有限制條件下的最短路,O(1)查詢.
限制條件不作用于端點(diǎn)i,j,正好可以用floyd解決.因?yàn)閒loyd正是不斷向中間點(diǎn)集中加入點(diǎn).只要限制一下這些被加入點(diǎn)的條件,就可以解決這題了.
初步歸納,對(duì)于查詢i,j,k,應(yīng)該輸出將所有c[p]<=k的點(diǎn)加入后的floyd[i,j]
對(duì)于限制k,點(diǎn)集的情況是:加了權(quán)最小的m個(gè)(0<=m<=N),這些點(diǎn)的權(quán)都不超過k
因此將點(diǎn)按權(quán)值升序排列.dist[k][i][j]表示:前k個(gè)點(diǎn)被加入后,i,j間的最短路.

代碼如下:
 

 1#include <iostream>
 2using namespace std;
 3int T,N,M,Q,pc[210];
 4int C[210],dist[210][210][210]; 
 5bool mycmp(int a, int b){
 6    return (C[a]<C[b]);
 7}

 8int main(){
 9    int i,j,k,p,a,b,c;
10    scanf("%d",&T);
11    while(T--){
12        memset(dist,0xff,sizeof(dist));
13        scanf("%d%d",&N,&M);
14        C[pc[0]=0]=-1;
15        for(i=1;i<=N;i++){
16            scanf("%d",&C[i]);
17            pc[i]=i;
18        }

19        sort(pc,pc+N+1,mycmp);
20        for(i=1; i<=M; i++){
21            scanf("%d%d%d",&a,&b,&c);
22            dist[0][a+1][b+1]=c;
23            dist[0][b+1][a+1]=c;
24        }

25        //floyd
26        for(k=1; k<=N; k++){
27            p=pc[k];
28            for(i=1; i<=N; i++){
29                for(j=1; j<=N; j++){
30                    if(dist[k][i][j]<0)
31                        dist[k][i][j]=dist[k-1][i][j];
32                    else if(dist[k-1][i][j]>=0)
33                        dist[k][i][j]=min(dist[k][i][j],dist[k-1][i][j]);
34                        
35                    if(i!=&& dist[k-1][i][p]>=0 && dist[k-1][p][j]>=0){
36                        if(dist[k][i][j]<0)
37                            dist[k][i][j]=dist[k-1][i][p]+dist[k-1][p][j];
38                        else
39                            dist[k][i][j]=min(dist[k][i][j], dist[k-1][i][p]+dist[k-1][p][j]);
40                    }

41                    //printf("%d,%d,%d(%d) ",k,i,j,dist[k][i][j]);
42                }

43            }
        
44        }

45        //query
46        scanf("%d",&Q);
47        while(Q--){
48            scanf("%d%d%d",&a,&b,&c);
49            //順序查找
50            for(i=0; i<=&& C[pc[i]]<=c; i++);
51            printf("%d\n",dist[i-1][a+1][b+1]);
52        }

53        printf("\n");
54    }

55    return 0;
56}

57
posted on 2009-03-31 14:39 wolf5x 閱讀(258) 評(píng)論(0)  編輯 收藏 引用 所屬分類: acm_icpcalgorithm
<2009年5月>
262728293012
3456789
10111213141516
17181920212223
24252627282930
31123456

"Do not spend all your time on training or studying - this way you will probably become very exhausted and unwilling to compete more. Whatever you do - have fun. Once you find programming is no fun anymore – drop it. Play soccer, find a girlfriend, study something not related to programming, just live a life - programming contests are only programming contests, and nothing more. Don't let them become your life - for your life is much more interesting and colorful." -- Petr

留言簿(3)

隨筆分類(59)

隨筆檔案(43)

cows

搜索

  •  

最新評(píng)論

評(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>
            久久精品首页| 99精品国产热久久91蜜凸| 久久gogo国模啪啪人体图| 亚洲裸体视频| 中国成人在线视频| 亚洲欧美成人一区二区三区| 亚洲三级影院| 亚洲精品一区二区三区四区高清| 久久精品在线| 久久在线播放| 亚洲国产精品电影| 一本色道久久综合亚洲精品小说| 一本色道久久88综合日韩精品| 一区二区电影免费观看| 欧美一区二区三区免费看| 欧美诱惑福利视频| 欧美激情一区二区三区全黄| 欧美高清视频在线| 欧美日韩三级视频| 国产日韩久久| 在线播放中文字幕一区| 亚洲激情成人| 午夜精品亚洲| 欧美国产日韩一二三区| 一本色道久久88综合亚洲精品ⅰ| 久久久久久亚洲综合影院红桃| 午夜精品福利电影| 欧美fxxxxxx另类| 国产精品美女主播| 亚洲国产精品va在线观看黑人| 在线视频精品一区| 久久综合九色综合久99| 一本到高清视频免费精品| 久久夜色撩人精品| 国产欧美激情| 国产精品人人爽人人做我的可爱| 亚洲愉拍自拍另类高清精品| 欧美日韩国产成人精品| 久久精品国产综合| 亚洲一区二区黄| 欧美高清视频一区二区三区在线观看 | 亚洲先锋成人| 久久久夜色精品亚洲| 日韩一区二区精品葵司在线| 久久视频国产精品免费视频在线| 欧美日韩国产天堂| 亚洲第一偷拍| 久久视频一区二区| 久久久久国产精品一区三寸| 国产精品女人毛片| 日韩一级在线观看| 在线观看日产精品| 亚洲免费在线观看视频| 国产精品一区二区女厕厕| 136国产福利精品导航| 欧美在线3区| 亚洲资源av| 99精品国产99久久久久久福利| 乱人伦精品视频在线观看| 欧美视频网站| 亚洲视频视频在线| 日韩一区二区精品在线观看| 欧美激情一区二区三区在线| 亚洲第一福利视频| 欧美福利电影在线观看| 久久婷婷一区| 亚洲精品精选| 亚洲老司机av| 国产精品日韩欧美一区二区| 欧美黄色aa电影| 亚洲一区bb| 亚洲欧美日韩精品久久久久| 一区二区三区四区五区在线| 日韩西西人体444www| 欧美日韩免费网站| 在线综合亚洲欧美在线视频| 日韩性生活视频| 国产精品豆花视频| 久久国产精品电影| 久久精品国产99精品国产亚洲性色| 狠狠综合久久av一区二区小说| 久久综合九色欧美综合狠狠| 久久综合激情| 中文在线一区| 亚洲欧美一级二级三级| 国外精品视频| 亚洲国产毛片完整版| 欧美另类高清视频在线| 欧美日韩欧美一区二区| 久久黄色网页| 亚洲人成久久| 欧美一区二区在线视频| 国产一区二区三区观看| 欧美ab在线视频| 欧美日韩一区二区三区在线观看免 | 欧美日韩另类丝袜其他| 亚洲欧美另类综合偷拍| 久久精品视频免费播放| 136国产福利精品导航网址| 亚洲一区二区三区涩| 国产欧美日韩视频一区二区三区| 伊人久久综合| 久久久久久久91| 久久久亚洲人| 亚洲国产精品一区二区第四页av| 亚洲黄一区二区| 国产精品乱码人人做人人爱| 久久阴道视频| 欧美午夜精彩| 老鸭窝亚洲一区二区三区| 欧美日韩国产bt| 欧美亚洲视频| 欧美成人日韩| 免费观看成人www动漫视频| 欧美日韩综合在线| 美乳少妇欧美精品| 欧美午夜片在线免费观看| 欧美va天堂| 国产一区二区欧美| 亚洲综合三区| 亚洲免费中文字幕| 欧美日韩日日骚| 亚洲黄色成人网| 精品99一区二区三区| 午夜精品久久久久久久99樱桃 | 亚洲免费在线视频| 99视频日韩| 久久免费精品日本久久中文字幕| 欧美在线播放| 欧美日韩在线一区二区| 另类春色校园亚洲| 一区二区三区在线免费视频| 亚洲欧美一区二区激情| 亚洲免费在线| 国产精品成人v| 亚洲精品日产精品乱码不卡| 亚洲欧洲日韩女同| 亚洲免费视频在线观看| 欧美精品午夜| 日韩亚洲一区二区| 中文国产亚洲喷潮| 国产精品videosex极品| 一区二区三区日韩| 亚洲欧美中文另类| 国产精品综合av一区二区国产馆| 亚洲一区二区在| 久久狠狠婷婷| 亚洲国产va精品久久久不卡综合| 久久最新视频| 亚洲国产日韩欧美在线动漫| 亚洲精品小视频| 国产精品福利片| 久久aⅴ国产欧美74aaa| 免费观看日韩av| 99国内精品久久| 国产美女精品在线| 久久久之久亚州精品露出| 亚洲韩日在线| 午夜免费日韩视频| 亚洲成色最大综合在线| 欧美日韩a区| 亚洲欧美在线播放| 欧美福利一区二区三区| 欧美午夜性色大片在线观看| 亚洲视频电影在线| 国产欧美日韩亚州综合| 久久免费精品日本久久中文字幕| 欧美国产一区二区三区激情无套| 日韩午夜在线视频| 国产精品一区二区你懂的| 久久视频国产精品免费视频在线| 91久久久亚洲精品| 久久国产欧美精品| 一区二区电影免费观看| 国产精品自在在线| 欧美精品大片| 久久国产视频网站| 一区二区黄色| 欧美激情一区二区| 欧美在线高清视频| 亚洲免费电影在线观看| 美女久久网站| 亚洲一区二区在线播放| 亚洲电影下载| 国产欧美日韩精品在线| 欧美国产免费| 久久精品二区亚洲w码| 夜夜躁日日躁狠狠久久88av| 久久躁日日躁aaaaxxxx| 亚洲欧美日韩综合aⅴ视频| 亚洲人成网站在线观看播放| 狠狠色狠狠色综合日日五| 欧美视频福利| 欧美电影资源| 美女在线一区二区| 西西人体一区二区| 在线亚洲激情| 夜夜夜久久久| 亚洲激情六月丁香| 亚洲大片在线观看|