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

            HDU 1232 暢通工程

            HDU 1232 暢通工程
            這個(gè)題目也是典型的最小生成樹(shù)算法的利用,不同于其他的題目就在于其它要求的是要添加的邊的最少數(shù)目,使得任意兩
            點(diǎn)都有聯(lián)系,利用并查集算法 ,在題目已經(jīng)給出的map基礎(chǔ)上,統(tǒng)計(jì)兩棵樹(shù)相并的次數(shù),即使要添加的路徑的最少數(shù)目。

             1 #include<stdio.h>
             2 #include<stdlib.h>
             3 
             4 int father[1001], tot;//father[i] 記錄 i 的 BOSS !  
             5 //tot 統(tǒng)計(jì)最初至少需要添加的路徑數(shù)目 ! 
             6 
             7 int find(int x)
             8 {//找 到  x 的 BOSS ! 
             9     int r = x;
            10     while (r != father[r]) r = father[r];
            11     return r;// 
            12 }
            13 
            14 void join(int a, int b)
            15 {//將 a 和  b 的 BOSS 統(tǒng)一! 
            16      int fa = find(a), fb = find(b);
            17      if (fa != fb)
            18      {
            19         father[fa] = fb;
            20         tot --// 統(tǒng)一了一次兩個(gè)陣營(yíng)的  BOSS ,所以需要添加的路徑的數(shù)目減一! 
            21      }
            22 }
            23 
            24 int main()
            25 {
            26     int n, m, x, y;
            27     while (scanf("%d"&n), n)
            28     {
            29           scanf("%d"&m);
            30           tot = n-1// 初始化 tot 等于 n 個(gè)點(diǎn)聯(lián)通所需要的最少邊的數(shù)目 ! 
            31           father[n+1];
            32           for (int i=1; i<=n; i++)father[i] = i;//初始化自己是自己的 BOSS ! 
            33           
            34           for (int i=1; i<=m; i++)
            35           {
            36               scanf("%d %d",&x, &y);
            37               join(x, y);  
            38           }
            39           printf("%d\n",tot); //輸出在已有基礎(chǔ)上還需要的邊的數(shù)目! 
            40     }
            41     return 0;
            42 }
            43 

            posted on 2011-07-18 08:59 AK 閱讀(1774) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 最小生成樹(shù)和并查集

            <2011年7月>
            262728293012
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            導(dǎo)航

            統(tǒng)計(jì)

            常用鏈接

            留言簿(1)

            隨筆分類

            隨筆檔案

            資源連接

            搜索

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            久久久久久久久久久久中文字幕 | 国产精品成人99久久久久| 久久99精品综合国产首页| 亚洲午夜精品久久久久久人妖| 国产激情久久久久影院小草| 少妇被又大又粗又爽毛片久久黑人 | 亚洲AV乱码久久精品蜜桃| 久久久久亚洲av无码专区喷水| 久久精品国产只有精品2020| 日本高清无卡码一区二区久久| 7777久久久国产精品消防器材| 伊人久久大香线蕉精品| 亚洲精品乱码久久久久久蜜桃不卡| 大伊人青草狠狠久久| 色欲综合久久躁天天躁| 丁香狠狠色婷婷久久综合| 日本五月天婷久久网站| 爱做久久久久久| 久久香蕉国产线看观看精品yw| 国产日韩久久免费影院| 久久久噜噜噜www成人网| 亚洲国产天堂久久综合| 国内精品欧美久久精品| 久久国产精品99精品国产987| 伊人久久精品影院| 久久久精品人妻无码专区不卡| 97久久久久人妻精品专区| 久久人与动人物a级毛片| 欧美久久天天综合香蕉伊| 国产真实乱对白精彩久久| 久久久久综合网久久| 色婷婷综合久久久久中文| 国产成人精品三上悠亚久久| 欧美性猛交xxxx免费看久久久| 97久久精品人人澡人人爽| 99久久精品九九亚洲精品| 日本免费久久久久久久网站| MM131亚洲国产美女久久| 激情伊人五月天久久综合| 91精品国产综合久久精品| 国产精品久久久久久吹潮|