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

ZOJ 1311 Network 求割點

A Telephone Line Company (TLC) is establishing a new telephone cable network. They are connecting several places numbered by integers from 1 to N. No two places have the same number. The lines are bidirectional and always connect together two places and in each place the lines end in a telephone exchange. There is one telephone exchange in each place. From each place it is possible to reach through lines every other place, however it need not be a direct connection, it can go through several exchanges. From time to time the power supply fails at a place and then the exchange does not operate. The officials from TLC realized that in such a case it can happen that besides the fact that the place with the failure is unreachable, this can also cause that some other places cannot connect to each other. In such a case we will say the place (where the failure occured) is critical. Now the officials are trying to write a program for finding the number of all such critical places. Help them.


Input

The input consists of several blocks of lines. Each block describes one network. In the first line of each block there is the number of places N < 100. Each of the next at most N lines contains the number of a place followed by the numbers of some places to which there is a direct line from this place. These at most N lines completely describe the network, i.e., each direct connection of two places in the network is contained at least in one row. All numbers in one line are separated by one space. Each block ends with a line containing just 0. The last block has only one line with N = 0.


Output

The output contains for each block except the last in the input one line containing the number of critical places.


Sample Input

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


Sample Output

1
2

 

無向連通圖的割點性質

1.       考慮根節點root。如果頂點xy同是root的兒子,那么由此證明x無法通過非root的頂點與y相連,所以當根root有數量>1的兒子時,根是圖的割點。

2.       考慮非根節點i,再考慮i的某個兒子節點j。易知:

          和j相連的白色節點都將成為j的子孫。

          和j相連的灰色節點都是j的祖先,由j指向i祖先的邊稱為后向邊。

          黑色節點不可能與j相連。

          如果jj的子孫都不存在指向j的祖先的后向邊,那么刪除頂點i后,頂點ji的祖先或者兄弟無法連通。因此,當且僅當i的某個兒子及兒子的子孫均沒有指向i祖先的后向邊時,i是圖的割點。

 

割點的算法

dfs的基礎上增加ancestor數組,ancestor[k]記錄與kk的子孫相連的輩分最高的祖先所在的深度,當ancestor[j]>=deep[j](ji的兒子)jj的子孫不存在指向i祖先的后向邊,則i是割點。Son表示頂點k的兒子的數量。根節點和非根節點要區別對待。

#include <iostream>
#include 
<vector>
using namespace std;

const int MAXN = 110;
vector
< vector<int> > adj;
int cut[MAXN],mark[MAXN],deep[MAXN],ancestor[MAXN];

char *read(char str[],char *p){
    
while(*&& *p!=' ') p++;
    
while(*&& *p==' ') p++;
    
return p;
}

void dfs(int u,int father,int depth){
    
int i,v,son=0;
    mark[u]
=1;
    deep[u]
=ancestor[u]=depth;
    
for(i=0;i<adj[u].size();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]
=1;
        }

    }

    mark[u]
=2;
}

int main(){
    
int i,x,y,n,cnt;
    
char str[MAXN*10],*p;
    
while(scanf("%d",&n),n){
        adj.assign(n,vector
<int>());
        
while(scanf("%d",&x),x){
            gets(str);
            
for(p=read(str,str);sscanf(p,"%d",&y)!=EOF;p=read(str,p))
                adj[x
-1].push_back(y-1),adj[y-1].push_back(x-1);
        }

        memset(cut,
0,sizeof(cut));
        memset(mark,
0,sizeof(mark));
        
for(i=0;i<n;i++)
            
if(!mark[i]) dfs(i,-1,0);
        
for(cnt=i=0;i<n;i++)
            
if(cut[i]) cnt++;
        printf(
"%d\n",cnt);
    }

    
return 0;
}

posted on 2009-05-27 20:35 極限定律 閱讀(1109) 評論(2)  編輯 收藏 引用 所屬分類: ACM/ICPC

評論

# re: ZOJ 1311 Network 求割點 2009-08-13 23:05 zeus

for(i=0;i<n;i++)
if(!mark[i]) dfs(0,-1,0);
這一句應該是dfs(i,-1,0)吧?不過居然都ac  回復  更多評論   

# re: ZOJ 1311 Network 求割點 2009-08-14 20:55 極限定律

多謝,寫錯了。居然能AC確實有點神奇@zeus  回復  更多評論   

<2009年8月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
303112345

導航

統計

常用鏈接

留言簿(10)

隨筆分類

隨筆檔案

友情鏈接

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            久久综合一区| 久久免费精品视频| 亚洲美女精品一区| 欧美片第一页| 亚洲一区不卡| 亚洲欧美日韩区| 狠狠色综合色综合网络| 久久久久久有精品国产| 久久综合狠狠综合久久综青草| 在线播放中文一区| 亚洲国产一二三| 欧美日韩国产色站一区二区三区| 一区二区三区你懂的| 中文日韩欧美| 伊人久久婷婷色综合98网| 欧美大片免费观看| 国产精品v片在线观看不卡| 欧美一区二区三区婷婷月色| 欧美在线国产| 一本久久a久久精品亚洲| 亚洲天堂av在线免费观看| 国产一区二区三区久久悠悠色av| 欧美成人精品在线观看| 欧美视频二区| 久久蜜桃资源一区二区老牛 | 亚洲欧美在线播放| 欧美在线视频在线播放完整版免费观看| 欲色影视综合吧| 在线亚洲观看| 亚洲激情成人| 午夜一级久久| 中国成人亚色综合网站| 久久成人资源| 亚洲欧美中文日韩v在线观看| 欧美亚洲一区二区在线| 亚洲老司机av| 久久久久久电影| 亚洲你懂的在线视频| 久久午夜精品| 欧美一级视频免费在线观看| 欧美1区2区视频| 久久久另类综合| 国产精品看片你懂得| 欧美高清免费| 一区在线视频观看| 亚洲一二三区在线观看| 99re国产精品| 欧美96在线丨欧| 久久一区中文字幕| 国产日韩精品视频一区| 一区二区三区日韩欧美精品| 亚洲国产小视频在线观看| 久久不射中文字幕| 欧美一区二区三区视频免费播放 | 久热re这里精品视频在线6| 亚洲欧美一区在线| 欧美日韩一区三区四区| 最新亚洲视频| 亚洲日本中文| 欧美成人资源网| 欧美成人免费播放| 亚洲成色777777女色窝| 久久精品国产一区二区电影| 久久精品观看| 国产午夜久久| 久久久久久久久久久一区 | 久久精品盗摄| 国产一区二区精品久久91| 一区二区三区精品视频| 一区二区三区三区在线| 欧美伦理91i| 亚洲精品久久久久久一区二区 | 欧美欧美天天天天操| 亚洲国产91| 亚洲精品久久久久久久久久久久| 免费一级欧美在线大片| 亚洲成人在线网| aa成人免费视频| 欧美日韩精品一区视频| 亚洲国产精品成人一区二区| 91久久精品视频| 欧美日韩成人综合| 一区二区三区精品国产| 久久丁香综合五月国产三级网站| 国产一区亚洲一区| 麻豆精品在线播放| 亚洲美女区一区| 欧美在线三级| 亚洲国产精品一区制服丝袜| 欧美激情乱人伦| 亚洲综合欧美日韩| 美女亚洲精品| 一区二区欧美在线| 国产一区二区三区的电影| 久久久午夜电影| 99国产精品视频免费观看一公开| 欧美一区二区三区久久精品| 国内精品久久久久久久97牛牛| 六月婷婷久久| 亚洲一区二区三区四区中文| 久久中文精品| 亚洲午夜av电影| 伊人婷婷久久| 国产精品免费观看在线| 久久久久久久综合狠狠综合| 亚洲精品美女在线观看| 久久久噜噜噜久噜久久| 一本色道久久综合| 韩国亚洲精品| 国产精品久久久久影院色老大| 久久国产福利国产秒拍| 亚洲美女精品成人在线视频| 久久综合久久美利坚合众国| 亚洲视频www| 在线精品福利| 国产欧亚日韩视频| 欧美日韩一区二区三区| 久久这里有精品视频| 亚洲欧美日韩在线播放| 亚洲日本无吗高清不卡| 噜噜噜噜噜久久久久久91| 亚洲欧美视频一区| 亚洲美女av电影| 在线观看亚洲| 国产在线欧美| 国产情人节一区| 国产精品成人在线| 欧美日韩精品二区第二页| 老牛嫩草一区二区三区日本| 欧美一区二区三区在线看| 亚洲性xxxx| 一二三区精品福利视频| 亚洲日韩成人| 亚洲精品1区2区| 亚洲福利专区| 亚洲国产午夜| 亚洲国产精品成人va在线观看| 免费成人小视频| 米奇777在线欧美播放| 久久久国产亚洲精品| 久久精品视频在线免费观看| 午夜国产精品视频免费体验区| 夜夜夜久久久| 亚洲视频www| 亚洲一区精品在线| 亚洲影音先锋| 欧美一区二区私人影院日本| 亚洲欧美色婷婷| 欧美诱惑福利视频| 久久国产精品久久久久久| 欧美在线一级va免费观看| 欧美在线免费| 鲁大师成人一区二区三区| 久久深夜福利免费观看| 免费观看久久久4p| 欧美激情一区二区三区全黄 | 先锋影音国产一区| 久久国产精品久久国产精品| 久久精品视频99| 免费在线欧美黄色| 欧美激情一区二区三区四区| 亚洲国产一区二区三区高清| 亚洲精品一区二| 亚洲综合国产精品| 久久久久亚洲综合| 欧美大胆成人| 国产精品午夜电影| 在线观看欧美日韩| 一本色道久久99精品综合 | 在线观看av不卡| 亚洲精品视频在线| 亚洲一区中文字幕在线观看| 久久av在线| 亚洲国产精彩中文乱码av在线播放| 亚洲人成网站999久久久综合| 中文一区二区| 久久久久国产精品厨房| 欧美精品在线播放| 国产一区二区0| 9色国产精品| 久久偷看各类wc女厕嘘嘘偷窃| 亚洲高清精品中出| 亚洲欧美国产精品桃花| 麻豆成人综合网| 国产毛片一区二区| 亚洲免费黄色| 久久久噜久噜久久综合| 亚洲免费大片| 老色批av在线精品| 国产精品亚洲综合一区在线观看| 亚洲第一级黄色片| 欧美一区二区在线免费播放| 亚洲成人中文| 久久狠狠久久综合桃花| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ入口 | 亚洲一区二区三区激情| 欧美11—12娇小xxxx| 国产一区白浆| 午夜精品一区二区三区电影天堂 | 亚洲高清免费在线|