• <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>
            隨筆-65  評(píng)論-6  文章-0  trackbacks-0
             1 /*
             2 Author:    Leo.W
             3 Descriptipn:    給定幾個(gè)頂點(diǎn)以及已知某幾個(gè)頂點(diǎn)存在通路,求最少還需幾條路即可完成連通圖
             4 How to Do:    由最后一組測(cè)試數(shù)據(jù)易知999 0,且結(jié)合最小生成樹的知識(shí)可得,連通分量數(shù)減一即得解
             5   */
             6 #include <iostream>
             7 #include <stdio.h>
             8 #include <string.h>
             9 using namespace std;
            10 #define MAXSIZE 1000
            11 int path[MAXSIZE][MAXSIZE];
            12 bool appear[MAXSIZE];
            13 bool chose[MAXSIZE];
            14 int m,n,lt;//圖中連線后的連通分量數(shù)
            15 
            16 void bfs(int num){
            17     chose[num]=true;
            18     int i;
            19     for(i=1;i<=m;i++)
            20         if(i!=num&&path[num][i]==0&&!chose[i]){//點(diǎn)i與點(diǎn)num有連線,并且點(diǎn)i還未被選入集合
            21             lt--;    bfs(i);
            22         }
            23 }
            24 int main(){
            25     //freopen("in.txt","r",stdin);
            26     while(scanf("%d",&m),m){//城鎮(zhèn)數(shù)
            27         scanf("%d",&n);//已有的公路條數(shù)
            28         lt=m;
            29         memset(appear,false,MAXSIZE);
            30         memset(chose,false,MAXSIZE);
            31         int i,j;
            32         for(i=1;i<=m;i++){
            33             for(j=1;j<=m;j++)
            34                 path[i][j]=MAXSIZE;
            35         }
            36         for(i=0;i<n;i++){
            37             int begin,end;
            38             scanf("%d%d",&begin,&end);
            39             appear[begin]=appear[end]=true;//表示已經(jīng)連上線的點(diǎn),即已經(jīng)出現(xiàn)
            40             path[begin][end]=path[end][begin]=0;
            41         }
            42         for(i=1;i<=m;i++)
            43             if(appear[i]&&!chose[i]){
            44                 bfs(i);
            45             }
            46         printf("%d\n",lt-1);
            47     }
            48     return 0; 
            49 } 
            posted on 2012-03-06 13:38 Leo.W 閱讀(134) 評(píng)論(0)  編輯 收藏 引用

            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            久久久久久毛片免费看| 国内精品久久久久久麻豆 | 久久久久国产精品嫩草影院| 久久热这里只有精品在线观看| 久久久久亚洲精品日久生情 | 日产精品久久久久久久| 国产精品久久久久久久 | 久久超乳爆乳中文字幕| 91久久九九无码成人网站| 午夜精品久久久久久毛片| 99久久精品免费看国产| AV无码久久久久不卡蜜桃| 91久久九九无码成人网站| 色婷婷综合久久久久中文| 久久男人中文字幕资源站| 久久99精品国产麻豆宅宅| 久久久久青草线蕉综合超碰| 久久99亚洲综合精品首页| 狠狠色噜噜狠狠狠狠狠色综合久久| 人妻丰满?V无码久久不卡| 久久香蕉国产线看观看99| 久久亚洲精品成人AV| 久久久这里有精品| 日本精品久久久久久久久免费| 青青青青久久精品国产h| 久久婷婷国产综合精品| 久久国语露脸国产精品电影| 亚洲七七久久精品中文国产| 久久婷婷人人澡人人| 精品久久人人爽天天玩人人妻| 久久精品国产只有精品2020| 国产精品久久久久久久久| 国产精品美女久久久久久2018| 亚洲AV日韩精品久久久久| 人妻无码精品久久亚瑟影视 | 久久精品免费全国观看国产| 人人狠狠综合久久亚洲| 亚洲欧美成人久久综合中文网| 亚洲国产精品一区二区三区久久 | 精品久久一区二区三区| 久久精品国产一区|