• <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>

            A Za, A Za, Fighting...

            堅信:勤能補拙

            PKU 1125 Stockbroker Grapevine

            問題:
            http://acm.pku.edu.cn/JudgeOnline/problem?id=1125

            思路:
            題意還是蠻簡單的,第一次寫Floyd-Warshall算法求每對頂點間的最短距離

            代碼:
             1 /* Floyd-Warshall algorithm */
             2 #include<stdio.h>
             3 #include<stdlib.h>
             4 #include<string.h>
             5 #define MAX_N 101
             6 #define INF 0x7FFFFFFF
             7 #define Min(a,b) ((a)<(b) ? (a) : (b))
             8 #define Max(a,b) ((a)<(b) ? (b) : (a))
             9 int weight[MAX_N][MAX_N];
            10 int d[MAX_N][MAX_N];
            11 int max[MAX_N];
            12 int n;
            13 
            14 void
            15 init()
            16 {
            17     int i, j, cnt, t, c;
            18     memset(weight, 0sizeof(weight));
            19     for(i=1; i<=n; i++) {
            20         scanf("%d"&cnt);
            21         for(j=0; j<cnt; j++) {
            22             scanf("%d %d"&t, &c);
            23             weight[i][t] = c;
            24         }
            25     }
            26 }
            27 
            28 void
            29 floyd_warshall() /* O(n^3) */
            30 {
            31     int i, j, k;
            32     for(i=1; i<=n; i++)
            33         for(j=1; j<=n; j++)
            34             d[i][j] = (i==j?0:INF);
            35     for(i=1; i<=n; i++)
            36         for(j=1; j<=n; j++)
            37             if(weight[i][j])
            38                 d[i][j] = weight[i][j];
            39     for(k=1; k<=n; k++) {
            40         for(i=1; i<=n; i++) {
            41             for(j=1; j<=n; j++) {
            42                 if(d[i][k]!=INF && d[k][j]!=INF)
            43                     d[i][j] = Min(d[i][j], d[i][k]+d[k][j]);
            44             }
            45         }
            46     }
            47 }
            48 
            49 void
            50 output()
            51 {
            52     int i, j, p, rt;
            53     memset(max, 0sizeof(max));
            54     rt = INF;
            55     for(i=1; i<=n; i++) {
            56         for(j=1; j<=n; j++)
            57             if(i!=j) {
            58                 max[i] = Max(max[i], d[i][j]);
            59             }
            60         if(max[i] < rt) {
            61             rt = max[i];
            62             p = i;
            63         }
            64     }
            65     if(rt == INF)
            66         printf("disjoint\n");
            67     else
            68         printf("%d %d\n", p, rt);
            69 }
            70 
            71 int
            72 main(int argc, char **argv)
            73 {
            74     while(scanf("%d"&n)!=EOF && n) {
            75         init();
            76         floyd_warshall();
            77         output();
            78     }
            79 }

            posted on 2010-09-11 21:37 simplyzhao 閱讀(232) 評論(0)  編輯 收藏 引用 所屬分類: F_圖算法

            導(dǎo)航

            <2010年10月>
            262728293012
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            統(tǒng)計

            常用鏈接

            留言簿(1)

            隨筆分類

            隨筆檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            国产亚洲精久久久久久无码77777 国产亚洲精品久久久久秋霞 | 久久精品欧美日韩精品| 狠狠色丁香婷婷久久综合| 久久久一本精品99久久精品88| 亚洲av成人无码久久精品| 99久久免费国产特黄| 久久国产乱子伦精品免费午夜| 青青青青久久精品国产h久久精品五福影院1421| 亚洲欧美国产精品专区久久| 国产精品美女久久久| 久久精品国产AV一区二区三区| 办公室久久精品| 五月丁香综合激情六月久久| 国产精品成人久久久久久久| 久久天天躁夜夜躁狠狠| 久久狠狠一本精品综合网| 午夜天堂av天堂久久久| 亚洲色欲久久久久综合网| 亚洲国产成人久久精品动漫| 亚洲AV无一区二区三区久久| 日韩十八禁一区二区久久| 国产Av激情久久无码天堂 | 久久精品日日躁夜夜躁欧美| 久久se精品一区精品二区| 亚洲精品乱码久久久久66| 精品久久久久久久国产潘金莲| 国产成人综合久久久久久| 国产精品久久久久久搜索| 中文字幕无码精品亚洲资源网久久 | 一本久久精品一区二区| 99久久精品免费看国产免费| 国产精品免费福利久久| 久久精品www人人爽人人| 97久久国产综合精品女不卡| 一本久久a久久精品亚洲| 中文字幕无码av激情不卡久久| 久久男人中文字幕资源站| 国产激情久久久久影院老熟女免费| 久久免费视频网站| 99久久国产综合精品五月天喷水| 香港aa三级久久三级|