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

付翔的專欄
在鄙視中成長 記錄成長的點滴
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>
            日韩一区二区免费看| 99精品国产99久久久久久福利| 亚洲女人小视频在线观看| 欧美日韩免费在线观看| 宅男精品视频| 亚洲自拍偷拍网址| 国产亚洲午夜| 亚洲国产成人精品女人久久久 | 欧美一级久久| 精品999久久久| 亚洲精品国产视频| 国产精品成人在线| 久久久久久久综合日本| 麻豆精品视频在线观看视频| 亚洲精品亚洲人成人网| 在线一区免费观看| 一区二区三区在线看| 亚洲片区在线| 国产日产欧美精品| 亚洲黄色视屏| 国产精品资源| 亚洲欧洲日本一区二区三区| 国产精品一区二区男女羞羞无遮挡| 久久婷婷亚洲| 欧美视频在线一区二区三区| 久久久久久久综合狠狠综合| 欧美激情二区三区| 欧美综合77777色婷婷| 美乳少妇欧美精品| 欧美一区二区性| 女人天堂亚洲aⅴ在线观看| 亚洲欧美日韩网| 欧美大片在线观看一区二区| 性视频1819p久久| 欧美成人一品| 久久免费一区| 欧美四级在线| 嫩草成人www欧美| 国产精品亚洲片夜色在线| 亚洲国产日韩欧美在线图片| 国产日韩专区在线| 夜夜夜精品看看| 亚洲精品视频一区二区三区| 激情六月婷婷综合| 亚洲一区在线直播| 亚洲视频在线看| 欧美电影在线观看完整版| 久久久久久黄| 国产精品丝袜xxxxxxx| 亚洲人成在线影院| 亚洲肉体裸体xxxx137| 欧美淫片网站| 欧美在线观看你懂的| 欧美丝袜一区二区三区| 亚洲日本va午夜在线电影 | 欧美不卡三区| 久久综合给合| 国产综合视频在线观看| 亚洲伊人观看| 午夜精品久久久久影视| 欧美日韩国产a| 亚洲精品在线观看视频| 亚洲精品之草原avav久久| 久久综合久久综合九色| 久久这里有精品视频| 国语自产精品视频在线看抢先版结局| 亚洲视频在线观看免费| 亚洲欧美大片| 国产免费亚洲高清| 午夜精品久久久久久 | 国语精品一区| 久久久久一区二区| 欧美二区在线观看| 亚洲精品欧美一区二区三区| 欧美韩日精品| 正在播放亚洲| 久久久av水蜜桃| 在线观看日韩国产| 欧美国产日韩一区二区在线观看| 亚洲国产精品悠悠久久琪琪| 亚洲伦理自拍| 国产精品美女午夜av| 欧美一级视频精品观看| 久久一区二区三区超碰国产精品| 在线观看成人av电影| 欧美区高清在线| 亚洲与欧洲av电影| 玖玖玖免费嫩草在线影院一区| 亚洲高清网站| 欧美日韩国产精品一区二区亚洲| 亚洲视频一二三| 久久久久久久综合狠狠综合| 亚洲国产一区二区三区高清| 欧美日韩1234| 欧美在线视频观看| 亚洲国产清纯| 欧美一区二区视频网站| 亚洲高清123| 国产精品美女午夜av| 久久久不卡网国产精品一区| 亚洲欧洲一区| 久久精品91久久香蕉加勒比| 91久久精品国产91性色tv| 欧美日韩天堂| 久久综合色影院| 亚洲男人第一网站| 亚洲电影av在线| 久久aⅴ国产紧身牛仔裤| 亚洲国产成人av在线| 国产精品―色哟哟| 美女亚洲精品| 欧美一区=区| 亚洲麻豆av| 牛夜精品久久久久久久99黑人| 久久久国产午夜精品| 日韩网站在线看片你懂的| 久久精品视频导航| 亚洲永久免费视频| 亚洲乱亚洲高清| 在线精品福利| 国产网站欧美日韩免费精品在线观看| 欧美国产精品久久| 久久伊伊香蕉| 久久久久成人精品| 午夜天堂精品久久久久| 一区二区激情| 亚洲日韩视频| 亚洲国产91| 欧美国产一区二区| 久久一区二区三区超碰国产精品| 性欧美超级视频| 午夜精品久久久| 亚洲综合丁香| 亚洲欧美另类在线| 亚洲先锋成人| 亚洲一区免费网站| 亚洲少妇中出一区| 制服诱惑一区二区| 中文一区二区在线观看| 一本色道婷婷久久欧美| 亚洲精品男同| 99re视频这里只有精品| 永久555www成人免费| 精品白丝av| 亚洲国产中文字幕在线观看| 亚洲国产成人精品久久| 亚洲国产小视频在线观看| 亚洲成色www8888| 亚洲欧洲精品一区二区三区波多野1战4 | 欧美国产日韩二区| 欧美aⅴ99久久黑人专区| 猛男gaygay欧美视频| 美腿丝袜亚洲色图| 欧美成人久久| 亚洲欧洲精品一区二区三区波多野1战4| 久久亚洲风情| 欧美成人性生活| 91久久黄色| 在线视频精品一| 亚洲欧美日韩国产一区| 亚洲欧美另类中文字幕| 欧美亚洲视频在线观看| 久久久久久亚洲精品不卡4k岛国| 久久一区二区精品| 欧美伦理在线观看| 国产精品国产三级国产专播精品人| 国产精品久久久久久久久动漫| 国产精品另类一区| 夜夜狂射影院欧美极品| 亚洲综合日韩| 久久这里有精品视频 | 亚洲网站视频| 久久99在线观看| 欧美黄色精品| 国产精品一区在线观看你懂的| 狠狠色丁香婷婷综合| 亚洲美女福利视频网站| 午夜一区二区三区在线观看| 浪潮色综合久久天堂| 亚洲乱码国产乱码精品精可以看| 亚洲一区欧美| 你懂的成人av| 国产午夜精品久久| 亚洲精品欧美在线| 久久成人国产| 亚洲精品乱码| 久久免费视频一区| 国产精品久久久久久久午夜| 精品88久久久久88久久久| 这里是久久伊人| 久久综合久久综合这里只有精品| 日韩视频在线观看免费| 久久久久久高潮国产精品视| 欧美日韩在线一二三| 亚洲国产另类精品专区| 久久精品1区| 在线一区日本视频| 欧美经典一区二区三区| 亚洲成在线观看| 久久成人免费视频|