• <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 閱讀(229) 評論(0)  編輯 收藏 引用 所屬分類: F_圖算法

            導航

            <2010年9月>
            2930311234
            567891011
            12131415161718
            19202122232425
            262728293012
            3456789

            統(tǒng)計

            常用鏈接

            留言簿(1)

            隨筆分類

            隨筆檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            国产成人无码精品久久久久免费| 日韩久久久久久中文人妻| 久久婷婷五月综合色奶水99啪 | 99精品国产在热久久无毒不卡| 久久国产色AV免费观看| 嫩草影院久久国产精品| 久久久久亚洲爆乳少妇无| 色综合久久综合中文综合网| 久久精品黄AA片一区二区三区| 久久久久久亚洲精品不卡| 热re99久久6国产精品免费| 狠狠久久综合| 久久亚洲精品人成综合网| 久久99国产精品成人欧美| 久久亚洲春色中文字幕久久久| 久久午夜福利电影| 99久久er这里只有精品18| 色综合久久久久综合99| 色综合久久久久网| 久久久婷婷五月亚洲97号色| 污污内射久久一区二区欧美日韩| 久久婷婷五月综合色高清| 久久亚洲精品无码aⅴ大香| 国产日韩久久免费影院| 久久成人国产精品| 亚洲国产精品无码久久98| 亚洲伊人久久综合影院| 久久精品国产黑森林| 99精品久久久久久久婷婷| 国产产无码乱码精品久久鸭| 久久精品国产久精国产果冻传媒 | 中文字幕乱码久久午夜| 性做久久久久久免费观看| 久久精品国产第一区二区| 亚洲国产精品久久久久网站| 精品国产一区二区三区久久久狼| 中文字幕久久久久人妻| 中文无码久久精品| 无码人妻久久一区二区三区免费丨| 要久久爱在线免费观看| 久久亚洲精品无码aⅴ大香|