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

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 極限定律 閱讀(1091) 評論(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年5月>
262728293012
3456789
10111213141516
17181920212223
24252627282930
31123456

導航

統計

常用鏈接

留言簿(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>
            欧美日韩一区国产| 亚洲激情啪啪| 亚洲美女少妇无套啪啪呻吟| 久久久一区二区| 欧美一区二区三区男人的天堂| 国产欧美精品日韩| 国产欧美大片| 韩国v欧美v日本v亚洲v| 激情另类综合| 国产精品99久久久久久白浆小说 | 亚洲视频你懂的| 亚洲精品国产日韩| 久久久久久免费| 欧美jizz19性欧美| 亚洲精品美女在线观看| 夜夜嗨av一区二区三区网页| 中日韩在线视频| 亚洲尤物精选| 久久亚洲精品网站| 欧美电影美腿模特1979在线看| 91久久精品一区二区三区| 一区二区三区产品免费精品久久75| 亚洲女与黑人做爰| 欧美大片一区| 国产毛片一区| 99热这里只有精品8| 香蕉乱码成人久久天堂爱免费| 久久综合网络一区二区| 99国产精品久久久久久久成人热 | 亚洲在线一区| 久久尤物电影视频在线观看| 欧美高清视频在线| 国产精品一区二区久久精品| 91久久综合亚洲鲁鲁五月天| 欧美一级视频免费在线观看| 亚洲国产精品999| 国产精品系列在线播放| 亚洲一区成人| 欧美激情综合亚洲一二区| 国产日韩欧美一区二区三区在线观看| 亚洲精品1234| 欧美中文在线观看| 亚洲精品国产拍免费91在线| 欧美一区视频在线| 欧美激情国产日韩| 韩国一区电影| 欧美主播一区二区三区美女 久久精品人 | 女人天堂亚洲aⅴ在线观看| 一本久久a久久免费精品不卡| 久久久亚洲欧洲日产国码αv | 亚洲激情午夜| 久久精品国产一区二区三区免费看| 亚洲国产经典视频| 久久国内精品自在自线400部| 国产精品r级在线| 一区二区三区不卡视频在线观看| 欧美~级网站不卡| 欧美一区二区三区喷汁尤物| 欧美日韩在线影院| 亚洲精品一区二区网址 | 国产午夜精品麻豆| 亚洲欧美激情在线视频| 亚洲精品日韩在线观看| 在线观看亚洲a| 亚洲影音先锋| 99国产精品视频免费观看| 欧美精品二区| 亚洲国产精品一区二区尤物区| 久久精品国产2020观看福利| 亚洲欧美中文在线视频| 国产精品xvideos88| 亚洲一区免费视频| 亚洲影院色在线观看免费| 欧美三级午夜理伦三级中视频| 日韩一级视频免费观看在线| 亚洲国产欧美在线人成| 欧美福利视频| 一区二区欧美在线| 最新亚洲视频| 国产精品ⅴa在线观看h| 午夜一级在线看亚洲| 99av国产精品欲麻豆| 欧美三区在线视频| 欧美一区永久视频免费观看| 欧美一区二区三区免费看| 韩国三级电影久久久久久| 欧美mv日韩mv国产网站| 欧美激情综合色综合啪啪| 亚洲天堂久久| 欧美一级在线视频| 在线日韩日本国产亚洲| 亚洲免费播放| 国产精品久久久久久久久婷婷| 欧美一区二区三区四区在线观看| 久久精品国产欧美亚洲人人爽| 亚洲福利视频二区| 亚洲精品久久在线| 狠狠88综合久久久久综合网| 亚洲日本成人女熟在线观看| 日韩小视频在线观看| 国产欧美一区二区在线观看| 欧美大片免费| 国产精品久久久久99| 蜜桃伊人久久| 欧美天天影院| 久久亚洲精品欧美| 欧美三级在线视频| 久久午夜视频| 国产精品免费区二区三区观看| 欧美 日韩 国产在线| 欧美精品电影| 男女精品视频| 国产精品九九| 欧美激情按摩| 国产日韩精品一区二区| 亚洲三级性片| 亚洲第一精品夜夜躁人人爽| 亚洲尤物视频网| 亚洲美女在线视频| 久久久夜夜夜| 久久免费视频在线观看| 国产精品久久久久av| 亚洲第一区在线| 国产一区二区激情| 99精品热视频| 99re8这里有精品热视频免费 | 亚洲欧美日韩一区二区三区在线| 欧美一区二区三区婷婷月色 | 欧美大胆成人| 久久视频在线免费观看| 国产美女一区二区| 一区二区不卡在线视频 午夜欧美不卡'| 国语自产精品视频在线看抢先版结局| 夜色激情一区二区| 夜夜嗨av一区二区三区网页| 欧美不卡视频一区发布| 欧美成人性网| 国产精品人人爽人人做我的可爱| 亚洲国产精品va在线看黑人| 亚洲电影欧美电影有声小说| 欧美亚洲一区三区| 亚洲欧美国产高清va在线播| 欧美另类高清视频在线| 欧美夫妇交换俱乐部在线观看| 激情五月婷婷综合| 久久久www成人免费无遮挡大片| 欧美专区福利在线| 国产日韩一区| 久久精品国产一区二区三区 | 欧美国产欧美亚洲国产日韩mv天天看完整 | 欧美成人综合| 猛干欧美女孩| 国产一区二区日韩| 欧美在线|欧美| 久久精品亚洲| 激情国产一区二区| 久久视频一区二区| 欧美二区乱c少妇| 亚洲精品永久免费精品| 欧美日韩性视频在线| 欧美激情成人在线| 99精品视频免费在线观看| 欧美日韩视频在线一区二区 | 午夜欧美精品| 久久青青草原一区二区| 亚洲大胆在线| 欧美另类高清视频在线| 亚洲国语精品自产拍在线观看| 一区二区三区免费网站| 国产精品播放| 国产精品自拍小视频| 亚洲制服丝袜在线| 国产午夜精品麻豆| 欧美国产一区在线| 性xx色xx综合久久久xx| 欧美搞黄网站| 欧美不卡高清| 一区在线播放视频| 夜夜爽www精品| 久久麻豆一区二区| 一本一本久久a久久精品综合妖精| 性欧美大战久久久久久久免费观看| 欧美综合第一页| 欧美高清日韩| 亚洲理论电影网| 欧美国产日产韩国视频| 亚洲综合999| 国产精品v片在线观看不卡| 欧美一区成人| 欧美风情在线观看| 欧美在线亚洲| 亚洲美女中文字幕| 国产一区欧美日韩| 欧美日韩国产在线播放| 久久精品亚洲精品国产欧美kt∨| 日韩视频不卡| 女女同性精品视频| 欧美一区二区三区免费视频| 亚洲免费观看高清完整版在线观看熊| 国产日韩成人精品|