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

付翔的專欄
在鄙視中成長 記錄成長的點滴
posts - 106,  comments - 32,  trackbacks - 0
 

Constructing Roads

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 3780    Accepted Submission(s): 1298


Problem Description
There are N villages, which are numbered from 1 to N, and you should build some roads such that every two villages can connect to each other. We say two village A and B are connected, if and only if there is a road between A and B, or there exists a village C such that there is a road between A and C, and C and B are connected. 

We know that there are already some roads between some villages and your job is the build some roads such that all the villages are connect and the length of all the roads built is minimum.
 

Input
The first line is an integer N (3 <= N <= 100), which is the number of villages. Then come N lines, the i-th of which contains N integers, and the j-th of these N integers is the distance (the distance should be an integer within [1, 1000]) between village i and village j.

Then there is an integer Q (0 <= Q <= N * (N + 1) / 2). Then come Q lines, each line contains two integers a and b (1 <= a < b <= N), which means the road between village a and village b has been built.

Output
You should output a line contains an integer, which is the length of all the roads to be built such that all the villages are connected, and this value is minimum.


#include<iostream>
#include
<string.h>
using namespace std;

#define infinity 123456789
#define max_vertexes 100 

typedef 
int Graph[max_vertexes][max_vertexes];

Graph G;
int total;
int lowcost[max_vertexes],closeset[max_vertexes],used[max_vertexes];
int father[max_vertexes];
void prim(Graph G,int vcount)
{
    
int i,j,k;
    
int min = infinity;
    
for (i=0;i<vcount;i++)
    {
        lowcost[i]
=G[0][i];
        closeset[i]
=0
        used[i]
=0;
        father[i]
=-1
    }
    used[
0]=1
    
    
for (i=1;i<vcount;i++)
    {
        j
=0;
        
        
while (used[j]) j++;
        min 
= lowcost[j];
        
for (k=0;k<vcount;k++)
            
if ((!used[k])&&(lowcost[k]<min)) 
            {
                min 
=lowcost[k];
                j
=k;
            }
            father[j]
=closeset[j]; 
            used[j]
=1;
            total 
+= min;
            
for (k=0;k<vcount;k++)
                
if (!used[k]&&(G[j][k]<lowcost[k]))
                { 
                    lowcost[k]
=G[j][k];
                    closeset[k]
=j; 
                }
    }
}

int main()
{
    
int N,i,j,Q;
    
int x,y;
    
while(cin>>N)
    {
        
        total 
= 0;
        
for(i =0; i< N;i++)
        {
            
for(j = 0;j < N; j ++)
                cin
>>G[i][j];
        }
        cin
>>Q;
        
for(i = 0; i < Q; i ++)
        {
            cin
>>x>>y;
            G[x
-1][y-1= 0;
            G[y
-1][x-1= 0;
        }
        prim(G,N);
        cout
<< total<<endl;
    }
    
return 0;
}


posted on 2010-09-02 23:48 付翔 閱讀(318) 評論(0)  編輯 收藏 引用 所屬分類: ACM 圖論

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理



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

常用鏈接

留言簿(2)

隨筆分類

隨筆檔案

文章分類

文章檔案

CSDN - 我的blog地址

博客

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲一级黄色片| 亚洲一级黄色av| 狂野欧美一区| 欧美一区二区国产| 亚洲影院色在线观看免费| 国产精品区免费视频| 久久国产主播| 久久精品99无色码中文字幕 | 亚洲在线播放电影| 国产精品永久免费| 玖玖玖免费嫩草在线影院一区| 欧美在线啊v一区| 91久久久久| 亚洲婷婷在线| 狠狠色狠狠色综合| 亚洲一区精品视频| 亚洲欧美一区二区精品久久久| 国产亚洲福利一区| 麻豆国产精品一区二区三区| 欧美韩日精品| 久久国产精品99精品国产| 久久精品一级爱片| 一本色道久久综合一区| 亚洲欧美怡红院| 亚洲精品美女91| 午夜精品久久久久99热蜜桃导演| 加勒比av一区二区| 一本一本久久a久久精品牛牛影视| 国产日韩精品在线观看| 午夜精品一区二区三区四区| 久久久不卡网国产精品一区| 一区二区三区四区五区视频| 欧美一区二区免费| 一本大道久久a久久精品综合| 性一交一乱一区二区洋洋av| 99精品国产在热久久| 欧美一区二区三区在线免费观看 | 国产精品九九| 欧美国产日本韩| 国产欧美日韩在线观看| 亚洲人成欧美中文字幕| 国产亚洲精品久久久久婷婷瑜伽| 亚洲国产网站| 亚洲成人中文| 午夜欧美不卡精品aaaaa| 日韩午夜在线观看视频| 久久亚洲综合色| 久久免费少妇高潮久久精品99| 欧美日韩国产小视频| 蜜桃av一区| 国产综合色在线视频区| 亚洲男人的天堂在线aⅴ视频| 99精品欧美| 欧美国产亚洲精品久久久8v| 久久综合激情| 黄色综合网站| 性做久久久久久久久| 香蕉视频成人在线观看| 国产精品chinese| 日韩手机在线导航| 中文日韩在线| 欧美日韩一区在线观看视频| 亚洲麻豆国产自偷在线| 99精品欧美一区| 欧美激情一区| 亚洲精品一区二区三区av| 亚洲精品裸体| 欧美母乳在线| 99精品国产高清一区二区| 一区二区三区四区国产| 欧美日韩一区二区免费视频| 日韩午夜电影av| 亚洲视频中文| 国产精品一二一区| 久久国产66| 欧美成人免费观看| 亚洲精品自在久久| 欧美揉bbbbb揉bbbbb| 中文精品99久久国产香蕉| 亚洲欧美日韩专区| 国产性猛交xxxx免费看久久| 久久精品女人的天堂av| 欧美电影打屁股sp| 999亚洲国产精| 国产精品久久久久久久app| 亚洲宅男天堂在线观看无病毒| 欧美一区综合| 在线观看成人av电影| 欧美aa在线视频| 亚洲日本免费| 香蕉视频成人在线观看 | 欧美精品国产精品| 亚洲一区bb| 美女精品视频一区| 亚洲精品在线免费| 国产精品视频专区| 免费人成网站在线观看欧美高清| 99re热精品| 久久久免费av| 亚洲图片欧洲图片av| 国产欧美日本在线| 欧美激情一区二区三区在线| 在线亚洲成人| 欧美二区在线播放| 欧美有码在线视频| 99国产精品99久久久久久粉嫩| 国产精品成人一区二区三区夜夜夜 | 久久国产精品亚洲va麻豆| 国产麻豆午夜三级精品| 亚洲欧美日韩精品久久亚洲区 | 亚洲一区亚洲| 在线不卡欧美| 国产麻豆精品theporn| 欧美成人自拍视频| 欧美一区二区三区喷汁尤物| 最新国产成人在线观看| 久久精品国产在热久久 | 国产精品视频久久一区| 美女尤物久久精品| 性久久久久久久久久久久| 亚洲美女精品久久| 欧美国产先锋| 蜜桃视频一区| 久久精品一二三区| 性8sex亚洲区入口| 亚洲一二三区在线| 99在线观看免费视频精品观看| 伊人久久婷婷| 国产一区二区三区免费不卡 | 久久国产精品高清| 亚洲欧美国产高清| av不卡在线看| 9l国产精品久久久久麻豆| 亚洲第一色在线| 欧美激情国产日韩精品一区18| 久久亚洲精品一区二区| 久久精品成人| 欧美影片第一页| 亚洲欧美99| 午夜精彩视频在线观看不卡| 宅男噜噜噜66一区二区| 日韩网站在线观看| 日韩视频免费大全中文字幕| 亚洲欧洲在线一区| 亚洲精品视频免费在线观看| 亚洲精品美女久久7777777| 亚洲第一网站| 亚洲精品你懂的| 99精品免费| 亚洲男女自偷自拍| 先锋影音网一区二区| 性做久久久久久久免费看| 欧美与黑人午夜性猛交久久久| 午夜性色一区二区三区免费视频| 亚洲综合色在线| 欧美一区二区三区在线看| 久久精品99无色码中文字幕| 久久久久九九九九| 欧美国产日韩一区二区| 亚洲国产毛片完整版| 一本色道久久综合精品竹菊| 一区二区免费在线视频| 亚洲自拍偷拍一区| 久久国产主播精品| 欧美国产视频在线观看| 国产精品国产三级国产aⅴ入口 | 欧美a级一区| 欧美日韩国产美| 国产精品亚洲网站| 影音先锋日韩精品| 一本色道久久综合精品竹菊| 亚洲私人影院| 久久精品在这里| 亚洲国产成人在线播放| 亚洲午夜女主播在线直播| 欧美在线高清视频| 欧美黄色小视频| 国产精品久久久一区二区| 国内精品一区二区三区| 亚洲美女毛片| 久久aⅴ国产紧身牛仔裤| 免费视频一区| 一区二区国产日产| 久久久久久久成人| 国产精品黄视频| 亚洲啪啪91| 久久国产精品久久国产精品| 亚洲成色www8888| 欧美一级视频一区二区| 免费亚洲电影在线观看| 亚洲视频图片小说| 欧美va天堂va视频va在线| 国产精品影视天天线| 亚洲乱码国产乱码精品精98午夜| 欧美一区二区三区婷婷月色 | 亚洲国产精品激情在线观看| 亚洲小少妇裸体bbw| 欧美成年网站| 国内成人在线| 亚洲欧美日韩国产一区二区|