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

POJ 1523 SPF 割點(diǎn)+分割連通塊的數(shù)量

Description

Consider the two networks shown below. Assuming that data moves around these networks only between directly connected nodes on a peer-to-peer basis, a failure of a single node, 3, in the network on the left would prevent some of the still available nodes from communicating with each other. Nodes 1 and 2 could still communicate with each other as could nodes 4 and 5, but communication between any other pairs of nodes would no longer be possible.

Node 3 is therefore a Single Point of Failure (SPF) for this network. Strictly, an SPF will be defined as any node that, if unavailable, would prevent at least one pair of available nodes from being able to communicate on what was previously a fully connected network. Note that the network on the right has no such node; there is no SPF in the network. At least two machines must fail before there are any pairs of available nodes which cannot communicate.

Input

The input will contain the description of several networks. A network description will consist of pairs of integers, one pair per line, that identify connected nodes. Ordering of the pairs is irrelevant; 1 2 and 2 1 specify the same connection. All node numbers will range from 1 to 1000. A line containing a single zero ends the list of connected nodes. An empty network description flags the end of the input. Blank lines in the input file should be ignored.

Output

For each network in the input, you will output its number in the file, followed by a list of any SPF nodes that exist.

The first network in the file should be identified as "Network #1", the second as "Network #2", etc. For each SPF node, output a line, formatted as shown in the examples below, that identifies the node and the number of fully connected subnets that remain when that node fails. If the network has no SPF nodes, simply output the text "No SPF nodes" instead of a list of SPF nodes.

Sample Input

1 2
5 4
3 1
3 2
3 4
3 5
0
1 2
2 3
3 4
4 5
5 1
0
1 2
2 3
3 4
4 6
6 3
2 5
5 1
0
0

Sample Output

Network #1
SPF node 3 leaves 2 subnets
Network #2
No SPF nodes
Network #3
SPF node 2 leaves 2 subnets
SPF node 3 leaves 2 subnets

Source


    圖論,又是一道割點(diǎn)的題,并且還要求出圖中所有的割點(diǎn)分別能將圖分割成幾個(gè)不同的塊。可以將某個(gè)割點(diǎn)的訪問標(biāo)記設(shè)置為1,然后對(duì)圖進(jìn)行dfs,方法類似求圖中有幾個(gè)連通的區(qū)域。
#include <iostream>
#include 
<vector>
using namespace std;

const int MAXN = 1010;
bool flag,cut[MAXN],visit[MAXN];
vector
< vector<int> > adj;
int mark[MAXN],deep[MAXN],ancestor[MAXN];

void dfs(int u,int father,int depth){
    
int i,v,son=0,len=adj[u].size();
    mark[u]
=1,deep[u]=ancestor[u]=depth;
    
for(i=0;i<len;i++){
        v
=adj[u][i];
        
if(v!=father && mark[v]==1)
            ancestor[u]
=min(ancestor[u],deep[v]);
        
if(mark[v]==0){
            dfs(v,u,depth
+1);
            son
=son+1;
            ancestor[u]
=min(ancestor[u],ancestor[v]);
            
if((father==-1 && son>1|| (father!=-1 && ancestor[v]>=deep[u]))
                cut[u]
=true;
        }

    }

    mark[u]
=2;
}

void partition(int u){
    visit[u]
=true;
    
int i,len=adj[u].size();
    
for(i=0;i<len;i++)
        
if(!visit[adj[u][i]])
            partition(adj[u][i]);
}

int main(){
    
int i,j,x,y,n,cnt,ca=1;
    
while(scanf("%d",&x),x){
        scanf(
"%d",&y);
        adj.assign(MAXN,vector
<int>());
        n
=max(x,y);
        adj[x
-1].push_back(y-1),adj[y-1].push_back(x-1);
        
while(scanf("%d",&x)){
            
if(x==0break;
            scanf(
"%d",&y);
            n
=max(x,y);
            adj[x
-1].push_back(y-1),adj[y-1].push_back(x-1);
        }

        memset(cut,
false,sizeof(cut));
        memset(mark,
0,sizeof(mark));
        
for(i=0;i<n;i++)
            
if(mark[i]==0
                dfs(
0,-1,0);
        printf(
"Network #%d\n",ca++);
        
for(flag=false,i=0;i<n;i++)
            
if(cut[i]){
                flag
=true;
                memset(visit,
false,sizeof(visit));
                
for(visit[i]=true,cnt=j=0;j<n;j++)
                    
if(!visit[j])
                        partition(j),cnt
++;
                printf(
"  SPF node %d leaves %d subnets\n",i+1,cnt);
            }

        
if(!flag)
            printf(
"  No SPF nodes\n");
        printf(
"\n");
    }

    
return 0;
}

posted on 2009-05-28 19:18 極限定律 閱讀(1119) 評(píng)論(0)  編輯 收藏 引用 所屬分類: ACM/ICPC

<2009年5月>
262728293012
3456789
10111213141516
17181920212223
24252627282930
31123456

導(dǎo)航

統(tǒng)計(jì)

常用鏈接

留言簿(10)

隨筆分類

隨筆檔案

友情鏈接

搜索

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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资源网站| 国产精品极品美女粉嫩高清在线 | 国产在线精品自拍| 亚洲欧洲一区二区在线观看| 黄色一区二区在线观看| 亚洲男人的天堂在线| 一区二区三区 在线观看视频| 久久婷婷国产综合尤物精品| 久久精品女人| 国产欧美韩日| 亚洲欧美一区二区在线观看| 亚洲一区二区欧美日韩| 欧美日韩成人综合天天影院| 亚洲激情av在线| 91久久精品国产| 毛片一区二区三区| 欧美大片在线影院| 亚洲国产精品精华液2区45 | 欧美影院在线播放| 亚洲欧美日韩成人| 国产精品成人免费精品自在线观看| 亚洲国产一区二区三区青草影视 | 久久精品国产综合| 国产欧美日韩视频一区二区| 亚洲欧美精品在线| 久久精品人人做人人爽| 国产综合在线看| 久久亚洲电影| 欧美激情一二区| 日韩视频二区| 欧美成人综合一区| 日韩视频在线一区二区| 亚洲一区二区日本| 国产三级欧美三级| 久久精品论坛| 狠狠综合久久| 亚洲高清在线播放| 欧美成人精品在线观看| 99精品免费视频| 欧美一区二区播放| 国产一区二区三区不卡在线观看 | 美女日韩在线中文字幕| 亚洲国产精品女人久久久| 一道本一区二区| 国产精品久久久久久久久久尿 | 国产精品嫩草99av在线| 欧美一区=区| 亚洲成人在线网| 夜夜夜久久久| 国产日韩欧美在线一区| 男人插女人欧美| 这里只有视频精品| 久久一区视频| 一区二区三区四区国产| 国产精品无码永久免费888| 久久久夜夜夜| 夜夜嗨av一区二区三区四区| 久久久欧美一区二区| 亚洲精品视频中文字幕| 国产视频观看一区| 欧美激情一区在线观看| 亚洲欧美一级二级三级| 亚洲国产日韩欧美在线图片| 午夜在线视频观看日韩17c| 亚洲国产高清在线观看视频| 欧美三级日本三级少妇99| 久久精品国产77777蜜臀| 日韩一区二区免费看| 久久综合国产精品| 亚洲欧美日韩国产综合| 亚洲精品日产精品乱码不卡| 国产日本亚洲高清| 欧美日韩a区| 久久婷婷丁香| 亚洲一区二区三区在线看| 亚洲国产经典视频| 麻豆精品一区二区综合av| 亚洲在线一区二区三区| 亚洲裸体在线观看| 在线精品一区二区| 国产亚洲欧美日韩美女| 国产精品成人一区二区网站软件 | 好看的日韩视频| 欧美三级黄美女| 欧美成人午夜| 久久午夜羞羞影院免费观看| 午夜精品久久久久影视| 一本色道久久加勒比88综合| 亚洲福利视频网站| 欧美a一区二区| 久久亚洲国产精品一区二区| 久久成人精品视频| 亚洲欧美在线另类| 亚洲午夜精品久久| 99精品欧美一区二区三区综合在线| 亚洲丁香婷深爱综合| 激情欧美日韩| 精品91在线| 国内精品美女在线观看| 国产丝袜一区二区三区| 国产欧美视频一区二区| 国产美女在线精品免费观看| 国产精品看片资源| 国产精品久久久爽爽爽麻豆色哟哟| 欧美日韩在线播放| 欧美日韩视频免费播放| 欧美日韩一区高清| 欧美亚洲不卡| 国产精品丝袜久久久久久app| 国产精品国产三级国产aⅴ无密码| 欧美日韩综合视频网址| 国产精品成人av性教育| 国产精品入口| 国产日韩欧美不卡在线| 国产一区二区三区高清播放| 国内精品久久久久久久影视蜜臀| 国产真实久久| 在线高清一区| 亚洲精品国产视频| 一区二区三区.www| 亚洲欧美日韩国产精品| 久久九九99视频| 欧美成人情趣视频| 亚洲精品日韩激情在线电影| 一卡二卡3卡四卡高清精品视频| 亚洲一区二区三区免费在线观看| 欧美亚洲在线视频| 另类激情亚洲| 欧美午夜免费影院| 国内视频精品| 亚洲伦理网站| 久久国产精品久久精品国产| 欧美成人自拍视频| 99精品99| 久久夜精品va视频免费观看| 欧美日韩国产bt| 国产亚洲综合精品| 99re66热这里只有精品4| 欧美一区二区三区在线免费观看| 久久综合九色99| 99精品热视频只有精品10| 欧美一级成年大片在线观看| 免费看黄裸体一级大秀欧美| 国产精品美女在线| 亚洲黄色一区| 性欧美暴力猛交69hd| 欧美激情导航| 欧美一区二区精品| 欧美久久久久免费| 精品成人一区二区三区| 中文久久乱码一区二区| 玖玖玖免费嫩草在线影院一区| 日韩视频免费观看高清在线视频 | 91久久夜色精品国产网站| 亚洲欧美在线看| 欧美剧在线免费观看网站| 好吊色欧美一区二区三区视频| 宅男精品视频| 欧美激情一区二区三区蜜桃视频| 亚洲女性裸体视频| 欧美日韩1080p| 在线免费观看日本一区| 欧美在线一二三区| 一区二区三区国产| 欧美激情二区三区| 亚洲国产高清在线| 久久免费国产| 亚洲嫩草精品久久| 国产精品草莓在线免费观看| 亚洲精品亚洲人成人网| 免费久久99精品国产自| 欧美一区二区高清| 国产精品久久久久久久一区探花| 亚洲精品免费在线播放| 欧美r片在线| 久久久久久综合| 黄色一区二区在线| 久久久久免费视频| 欧美亚洲三级| 国产欧美一区二区精品仙草咪| 亚洲综合欧美| 在线亚洲观看| 国产精品成人va在线观看| 亚洲无线观看| 日韩一级成人av| 欧美网站在线| 亚洲欧美成人综合| 亚洲影院色在线观看免费| 国产精品久久久久久久午夜片| 亚洲一区二区av电影| 亚洲线精品一区二区三区八戒| 国产精品国产三级国产a| 亚洲欧美日韩爽爽影院| 亚洲自拍16p| 狠狠色丁香久久综合频道|