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

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一区二区国产馆| 欧美一区在线看| 欧美专区在线| 亚洲精品免费网站| 一区二区不卡在线视频 午夜欧美不卡在| 欧美天天综合网| 欧美在线一二三四区| 久久人人精品| 一区二区三区视频免费在线观看| 亚洲一区二区三区免费视频| 国产一区二区三区久久精品| 欧美丰满高潮xxxx喷水动漫| 欧美日产在线观看| 欧美在线视频免费| 农村妇女精品| 欧美在线高清| 欧美大片免费久久精品三p | 国产亚洲a∨片在线观看| 噜噜噜噜噜久久久久久91 | 欧美亚洲网站| 亚洲美女淫视频| 亚洲欧美日韩网| 日韩亚洲欧美一区二区三区| 亚洲一区二区精品| 亚洲国内高清视频| 亚洲欧美一区二区视频| 亚洲九九精品| 久久精品99| 亚洲综合另类| 欧美成人有码| 久久久噜噜噜久久狠狠50岁| 欧美日韩卡一卡二| 牛夜精品久久久久久久99黑人| 欧美午夜免费| 亚洲高清在线精品| 国产综合色在线| 亚洲天堂偷拍| 亚洲精品视频免费观看| 久久精品日产第一区二区| 亚洲天天影视| 欧美日韩1区2区3区| 麻豆视频一区二区| 国产日产欧产精品推荐色 | 久久久久久一区二区| 欧美日韩在线视频一区二区| 老牛影视一区二区三区| 国产精品美女午夜av| 亚洲美女诱惑| 亚洲清纯自拍| 免费高清在线一区| 六月婷婷一区| 黄网站免费久久| 欧美一二三视频| 欧美一区二区三区视频免费| 欧美日韩性视频在线| 亚洲精品国产品国语在线app| 在线国产亚洲欧美| 久久久久久久国产| 免费观看日韩av| 一色屋精品视频免费看| 久久久精品日韩| 玖玖综合伊人| 在线免费观看日本欧美| 久久精品一区二区三区中文字幕| 久久久久国产一区二区三区| 国产亚洲精品aa午夜观看| 欧美一级理论片| 久久最新视频| 亚洲国产日韩精品| 欧美精品一区二区视频| 亚洲理论在线| 欧美在线关看| 激情久久中文字幕| 美乳少妇欧美精品| 亚洲区国产区| 亚洲校园激情| 国产日韩在线看片| 久久精品主播| 亚洲人www| 欧美一区二区三区精品电影| 国产一区二区av| 免费久久99精品国产| 日韩视频在线一区二区| 欧美一区二区三区播放老司机| 国产亚洲欧美日韩精品| 美女图片一区二区| 99精品国产一区二区青青牛奶| 欧美亚洲在线视频| 亚洲国产福利在线| 欧美日一区二区在线观看| 午夜老司机精品| 亚洲成色777777在线观看影院| 一区二区国产精品| 国产亚洲欧美另类中文| 欧美大片在线观看一区| 亚洲一级特黄| 亚洲国产第一页| 欧美一区二区在线视频| 亚洲欧洲在线一区| 国产日韩一区二区三区在线播放| 久久这里只精品最新地址| 日韩一区二区精品视频| 久久免费国产精品1| 亚洲网站视频福利| 在线精品一区| 国产免费观看久久| 欧美日韩一区自拍| 狂野欧美性猛交xxxx巴西| 亚洲午夜精品网| 亚洲第一精品夜夜躁人人躁| 久久成人精品电影| 亚洲色在线视频| 亚洲欧洲综合| 精品999在线观看| 国产精品一级在线| 欧美日韩中文字幕日韩欧美| 久久影视精品| 久久精品系列| 欧美在线在线| 亚洲欧美日韩国产一区| 日韩午夜在线视频| 亚洲黄色天堂| 亚洲二区视频在线| 免费影视亚洲| 久久在线观看视频| 久久久久久一区| 欧美主播一区二区三区美女 久久精品人| 日韩午夜在线电影| 亚洲精品你懂的| 亚洲激情网站| 亚洲黄色尤物视频| 亚洲国产成人午夜在线一区| 国内久久婷婷综合| 黄色成人在线观看| 国内精品亚洲| 在线观看欧美黄色| 在线观看日韩av先锋影音电影院| 国产一区日韩欧美| 国产主播精品在线| 黄色成人av| 亚洲成人在线视频网站| 精品动漫av| 亚洲黄色影片| av成人激情| 亚洲天堂网在线观看| 亚洲一区免费看| 先锋亚洲精品| 老牛影视一区二区三区| 蜜桃精品一区二区三区| 亚洲电影免费观看高清完整版在线| 欧美激情第9页| 亚洲激情国产精品| 一区二区三区精密机械公司| 亚洲视频电影在线| 欧美一区=区| 久久综合给合久久狠狠狠97色69| 欧美gay视频激情| 欧美日本簧片| 国产欧美一区二区三区久久| 国产伊人精品| 亚洲日本中文| 香蕉亚洲视频| 免费日韩成人| 日韩一级精品| 久久国产一区| 欧美日韩免费一区二区三区| 国产精品美女黄网| 在线免费观看一区二区三区| 亚洲精品一区二区三区福利| 亚洲男女自偷自拍图片另类| 久久久欧美一区二区| 亚洲国产精品久久久久秋霞不卡| 99精品国产高清一区二区| 欧美在线一二三| 欧美成人免费网| 国产麻豆日韩| 亚洲毛片在线免费观看| 欧美在线观看www| 最新中文字幕一区二区三区| 午夜精品久久| 欧美激情欧美激情在线五月| 国产乱码精品| 一区二区三区日韩| 免费美女久久99| 亚洲免费中文| 欧美另类在线播放| 影音先锋成人资源站| 亚洲一区视频在线| 亚洲国产成人在线视频| 性伦欧美刺激片在线观看| 欧美男人的天堂| 亚洲高清自拍| 久久久久久亚洲综合影院红桃| 日韩一级视频免费观看在线| 麻豆精品一区二区综合av| 国产伦精品一区二区三区|