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

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>
            久久综合久色欧美综合狠狠 | 国产欧美精品xxxx另类| 亚洲国产1区| 久久久久久久综合色一本| 亚洲天堂av图片| 嫩草国产精品入口| 久久免费国产精品| 亚洲伦伦在线| 91久久久久久久久| 欧美日韩国产综合新一区| 国产精品99久久久久久www| 亚洲久久一区| 国产精品影音先锋| 蜜乳av另类精品一区二区| 久久人人爽人人| 亚洲一区二区综合| 久久蜜桃香蕉精品一区二区三区| 亚洲高清久久久| 夜夜嗨av一区二区三区网页| 国产女人aaa级久久久级| 国产九色精品成人porny| 久久久国产午夜精品| 久久天天狠狠| 久久国产精品亚洲77777| 免费不卡欧美自拍视频| 亚洲欧美国产毛片在线| 久久精品国产成人| 亚洲天堂黄色| 欧美精品www在线观看| 久久人人爽人人爽| 国产精品久久久久av| 久久国产色av| 亚洲韩国日本中文字幕| 亚洲欧洲在线一区| 亚洲国产精品一区| 久久成人人人人精品欧| 亚洲在线一区二区| 欧美伦理影院| 亚洲三级观看| 久久久久久高潮国产精品视| 亚洲免费一级电影| 欧美日韩情趣电影| 亚洲素人在线| 久久久999成人| 狠狠色综合色区| 久久频这里精品99香蕉| 噜噜噜躁狠狠躁狠狠精品视频| 国产欧美一区二区精品性色| 亚洲欧美在线播放| 美女被久久久| 夜夜爽99久久国产综合精品女不卡 | 亚洲日本中文字幕| 欧美亚一区二区| 欧美亚洲免费电影| 欧美成人首页| 午夜精品久久久久| 好吊一区二区三区| 欧美喷水视频| 久久久亚洲高清| 夜夜嗨av一区二区三区四区 | 国产精品你懂得| 亚洲欧美伊人| 亚洲毛片在线观看| 欧美国产高潮xxxx1819| 亚洲欧美影音先锋| 亚洲精品一区二区三区99| 国产精品三级久久久久久电影| 久久精品国产精品亚洲综合 | 国产精品久在线观看| 久久aⅴ乱码一区二区三区| 亚洲人成网在线播放| 久久aⅴ国产欧美74aaa| 欧美一级大片在线观看| 日韩一区二区精品葵司在线| 美女成人午夜| 久热综合在线亚洲精品| 性做久久久久久| 亚洲午夜久久久久久久久电影网| 亚洲黄色片网站| 亚洲精品1区| 日韩视频一区二区三区| 亚洲国产精品尤物yw在线观看| 国产一区二区三区免费在线观看| 国产精品video| 国产色爱av资源综合区| 国产精品亚洲综合一区在线观看| 欧美日韩一本到| 国产精品另类一区| 国产日产欧美一区| 精品成人一区| 一本色道久久精品| 性做久久久久久免费观看欧美| 亚洲综合国产精品| 久久爱另类一区二区小说| 久久国产精品久久久久久| 久久精品毛片| 亚洲激情精品| 在线一区亚洲| 免费一区视频| 国产一区二区高清| 亚洲国产美国国产综合一区二区| 一本色道久久88综合亚洲精品ⅰ | 亚洲国产精品久久人人爱蜜臀| 亚洲高清网站| 欧美亚洲视频| 久久在线91| 欧美日韩色婷婷| 亚洲综合电影一区二区三区| 亚洲香蕉在线观看| 麻豆91精品91久久久的内涵| 日韩亚洲精品电影| 久久久久在线| 黄色欧美日韩| 久久精品国产清自在天天线| 99热在这里有精品免费| 久久亚洲精品网站| 韩国av一区二区| 久久精品国产91精品亚洲| 99热免费精品在线观看| 欧美v国产在线一区二区三区| 国精产品99永久一区一区| 亚洲欧美bt| 性做久久久久久免费观看欧美| 国产精品久久久久国产a级| 亚洲性感美女99在线| 亚洲精选在线观看| 欧美日韩色婷婷| 欧美日韩一区二区欧美激情 | 中文亚洲字幕| 亚洲自拍偷拍视频| 亚洲视频一区| 国产婷婷97碰碰久久人人蜜臀| 久久久一区二区| 裸体素人女欧美日韩| 久久久欧美精品sm网站| 欧美极品欧美精品欧美视频| 亚洲美女网站| 亚洲欧美日韩国产一区二区三区| 国产精品美女久久久久久2018 | 亚洲一区二区三区在线看| 欧美日韩国产在线播放网站| 亚洲你懂的在线视频| 国内精品福利| 亚洲国产日韩一区二区| 欧美特黄一区| 欧美岛国在线观看| 国产精品视频一区二区高潮| 美女精品一区| 国产精品日韩久久久| 欧美激情一区在线| 国产精品一区二区你懂的| 亚洲国产精品久久久久秋霞蜜臀| 国产精品久久久久一区二区三区| 欧美91视频| 狠狠久久五月精品中文字幕| 日韩五码在线| 亚洲天堂av在线免费| 欧美国产日韩二区| 欧美激情一区在线| 亚洲国产成人精品女人久久久 | 欧美日韩精品欧美日韩精品 | 欧美日韩高清在线播放| 欧美日韩免费在线视频| 久色成人在线| 在线观看视频欧美| 久久综合色一综合色88| 欧美日韩成人在线视频| 欧美电影免费观看| 国产精品久久久久久久浪潮网站 | 亚洲欧美综合v| 欧美日韩你懂的| 99精品视频免费观看视频| 欧美日韩在线免费| 午夜精品福利在线| 欧美成人激情视频| 欧美在线欧美在线| 性欧美超级视频| 亚洲一区二区三区影院| 欧美视频在线一区| 91久久精品一区二区三区| 国产亚洲欧洲| 在线一区观看| 久久精品一区二区三区四区| 国产热re99久久6国产精品| 一本色道久久综合狠狠躁的推荐| 亚洲视频欧洲视频| 久久精品人人做人人爽电影蜜月| 狠狠色丁香婷综合久久| 美女诱惑黄网站一区| 欧美成人精品一区二区三区| 午夜宅男久久久| 亚洲夫妻自拍| 亚洲精品一区在线观看| 99re国产精品| 亚洲特级片在线| 久久精品国产亚洲精品| 久久久亚洲午夜电影| 麻豆精品国产91久久久久久| 欧美福利电影网| 亚洲精品久久在线|