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

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>
            亚洲欧美日韩区| 亚洲影院污污.| 亚洲国产高清aⅴ视频| 欧美在线黄色| 欧美理论在线| 99精品国产在热久久| 亚洲国产日韩欧美在线图片 | 亚洲美女视频| 亚洲欧洲一级| 欧美性猛片xxxx免费看久爱 | 国产一区日韩欧美| 亚洲精品视频啊美女在线直播| 久久中文字幕一区二区三区| 亚洲精品在线电影| 欧美色道久久88综合亚洲精品| 亚洲少妇诱惑| 欧美激情中文字幕一区二区| 欧美激情久久久| 亚洲综合清纯丝袜自拍| 欧美激情一区二区三区蜜桃视频| 亚洲午夜在线观看| 国产一区二区视频在线观看 | 在线看片第一页欧美| 噜噜噜久久亚洲精品国产品小说| 一区三区视频| 99国产精品国产精品毛片| 久久久久久久久久久久久久一区| 欧美一级电影久久| 久久精品综合网| 国产精品午夜在线| 欧美国产一区二区在线观看| 欧美日韩视频一区二区| 久久精品国产免费观看| 一区二区三区四区五区视频 | 欧美国产视频日韩| 在线视频国产日韩| 日韩手机在线导航| 亚洲第一视频网站| 久久综合久久综合九色| 欧美激情乱人伦| 亚洲国产一二三| 久久综合婷婷| 欧美日韩国产91| 99精品视频免费| 亚洲国产精品免费| 国产一区二区三区在线免费观看 | 亚洲午夜视频在线| 亚洲激情网站免费观看| 免费欧美日韩| 国产精品日韩在线| 亚洲国产精品一区二区www| 免费亚洲一区二区| 亚洲激情视频在线播放| 欧美黄色免费网站| 欧美好吊妞视频| 亚洲精选中文字幕| 久久人人97超碰人人澡爱香蕉| 亚洲成人直播| 欧美顶级少妇做爰| 一区二区三区我不卡| 亚洲午夜久久久久久久久电影院 | 午夜精品久久久久99热蜜桃导演| 亚洲老板91色精品久久| 欧美日韩hd| 亚洲欧美日韩精品在线| 欧美激情中文不卡| 亚洲午夜精品一区二区| 亚洲一区二区成人| 亚洲一区精彩视频| 欧美久久一级| 亚洲专区一区二区三区| 亚洲欧美日本在线| 小黄鸭精品密入口导航| 一本大道久久精品懂色aⅴ| 最新热久久免费视频| 欧美午夜电影在线| 日韩亚洲欧美在线观看| 一区二区精品在线| 亚洲欧美日产图| 欧美在线首页| 欧美在线视频观看| 久久久天天操| 欧美二区在线| 欧美一区国产一区| 国产日韩在线不卡| 亚洲电影免费在线| 国产精品婷婷| 亚洲制服少妇| 久久精品毛片| 欧美日韩三级在线| 亚洲一区在线免费观看| 久久精品视频一| 欧美精彩视频一区二区三区| 亚洲美女性视频| 欧美一区二区三区在线观看视频| 久久综合久久美利坚合众国| 亚洲欧美另类在线观看| 久久婷婷亚洲| 久久亚洲风情| 亚洲区一区二区三区| 欧美日韩一区二区三区视频| 免费黄网站欧美| 99国产精品久久久| 国产精品视频内| 久久夜色精品国产| 99av国产精品欲麻豆| 亚洲国产va精品久久久不卡综合| 欧美风情在线观看| 亚洲欧美日韩视频二区| 亚洲大片在线| 久久aⅴ国产欧美74aaa| 欧美三区在线| 久久久精品动漫| 中文国产一区| 亚洲电影毛片| 亚洲国产一区二区a毛片| 欧美日韩妖精视频| 久久夜色精品国产| 另类成人小视频在线| 国产亚洲视频在线| 欧美日韩在线不卡一区| 亚洲国产一区二区三区在线播 | aaa亚洲精品一二三区| 国产婷婷成人久久av免费高清 | 欧美激情在线观看| 久久不射电影网| 亚洲国产cao| 狂野欧美激情性xxxx| 亚洲综合大片69999| 欧美伊人久久久久久久久影院| 亚洲欧洲午夜| 激情久久综合| 国产区在线观看成人精品| 欧美日韩国产亚洲一区| 久久综合99re88久久爱| 午夜久久一区| 亚洲一级黄色| 99re6这里只有精品| 亚洲新中文字幕| 国产精品久久久爽爽爽麻豆色哟哟| 一区二区三区高清在线| 亚洲激情六月丁香| 亚洲高清毛片| 亚洲视频久久| 国产女主播在线一区二区| 国产精品sss| 久久国产精品99国产精| 欧美国产三级| 亚洲免费人成在线视频观看| 一本一本大道香蕉久在线精品| 亚洲黄色天堂| 欧美日韩在线播放| 久久岛国电影| 久久久久一区| 久久中文字幕一区| 欧美承认网站| 欧美日韩高清区| 午夜视黄欧洲亚洲| 亚洲精品欧美日韩| 亚洲精品免费一区二区三区| 亚洲欧美日韩天堂| 亚洲国产经典视频| 亚洲欧洲综合另类| 国产精品一区二区三区成人| 久久综合一区二区| 欧美激情1区2区3区| 欧美精品亚洲一区二区在线播放| 欧美精品色综合| 国产精品啊啊啊| 久久午夜羞羞影院免费观看| 一区二区三区www| 先锋影音一区二区三区| 久久久久久久久综合| 麻豆精品91| 欧美一乱一性一交一视频| 久久久久在线| 欧美日韩在线播放三区| 国产一区二区三区免费在线观看| 欧美日韩无遮挡| 国产视频久久久久久久| 91久久精品久久国产性色也91| 一区二区激情小说| 亚洲欧洲日产国码二区| 黄色亚洲在线| 一区二区三区鲁丝不卡| 亚洲国内在线| 在线观看欧美精品| 国产日韩欧美视频| 亚洲精品免费在线播放| 一区二区在线视频| 亚洲视频 欧洲视频| 久久资源在线| 久久天天狠狠| 一二三区精品| 久久综合九色综合欧美就去吻 | 欧美成人黄色小视频| 久久精品国产99国产精品| 亚洲一区二区伦理| 欧美丰满高潮xxxx喷水动漫| 久久亚洲精品伦理|