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

posts - 18,  comments - 5,  trackbacks - 0

一、題目描述

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


二、分析
      用DFS解決問題,詳細算法:割點與橋
三、代碼

 1#include<iostream>
 2#include<list>
 3using namespace std;
 4int t;
 5int v1, v2;
 6list<int> g[1001];
 7bool flag;
 8int root;
 9int counter;
10bool spf[1001];
11int low[1001], lab[1001];
12bool visit[1001];
13void dfs(int u, int fa)
14{
15    low[u] = lab[u] = counter++;
16    list<int>::iterator it;
17    int counter = 0;
18    for(it = g[u].begin(); it != g[u].end(); it++)
19    {
20        int v = *it;
21        if(!lab[v])
22        {
23            counter++;
24            dfs(v, u);
25            low[u] = min(low[u], low[v]);
26            if((u==root && counter>=2|| (u!=root && low[v]>=lab[u]))
27                spf[u] = flag = true;
28        }

29        else if(v != fa)
30            low[u] = min(low[u], lab[v]);
31    }

32}

33void find(int u)
34{
35    visit[u] = true;
36    list<int>::iterator it;
37    for(it = g[u].begin(); it != g[u].end(); it++)
38        if(!visit[*it])
39            find(*it);
40}

41int main()
42{
43    t = 1;
44    while(1)
45    {
46        scanf("%d"&v1);
47        if(v1 == 0break;
48        for(int i=1; i<=1000; i++)
49            g[i].clear();
50        memset(spf, 0sizeof spf);
51        memset(low, 0sizeof low);
52        memset(lab, 0sizeof lab);
53        while(v1 != 0)
54        {
55            scanf("%d"&v2);
56            g[v1].push_back(v2);
57            g[v2].push_back(v1);
58            root = v1;
59            scanf("%d"&v1);
60        }

61        counter = 1;
62        flag = false;
63        dfs(root, -1);
64        printf("Network #%d\n", t++);
65        if(flag)
66        {
67            for(int i=1; i<=1000; i++)
68            {
69                if(!spf[i]) continue;
70                int cnt = 0;
71                memset(visit, 0sizeof visit);
72                visit[i] = true;
73                list<int>::iterator it;
74                for(it = g[i].begin(); it != g[i].end(); it++)
75                    if(!visit[*it])
76                    {
77                        cnt++;
78                        find(*it);
79                    }

80                    printf("  SPF node %d leaves %d subnets\n", i, cnt);
81            }

82        }

83        else
84            printf("  No SPF nodes\n");
85        printf("\n");
86    }

87}
posted on 2009-07-04 16:12 Icyflame 閱讀(1201) 評論(0)  編輯 收藏 引用 所屬分類: 解題報告
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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一区二区三区在线观看| 国产精品福利网| 欧美精品一区视频| 欧美风情在线观看| 欧美日韩人人澡狠狠躁视频| 欧美视频专区一二在线观看| 国产精品a久久久久| 国产精品亚洲成人| 国产在线麻豆精品观看| 国内伊人久久久久久网站视频 | 亚洲精品免费一区二区三区| 亚洲另类一区二区| 亚洲一区二区三区777| 午夜天堂精品久久久久| 欧美一区二区三区免费看| 久久精品五月| 亚洲国产日韩欧美| 亚洲视频一区在线观看| 久久精品二区| 欧美久久久久久久| 国产日韩欧美夫妻视频在线观看| 激情五月婷婷综合| 夜夜嗨网站十八久久| 欧美一区综合| 欧美国产乱视频| 一区二区三区偷拍| 久久全国免费视频| 国产精品超碰97尤物18| 在线观看日韩av电影| 在线视频精品一| 久久综合色影院| 一区二区三区精品视频| 久久婷婷影院| 国产精品久久久久久超碰| 亚洲高清免费视频| 欧美亚洲一区三区| 亚洲激情午夜| 久久久久久成人| 国产精品成人久久久久| 亚洲黄色大片| 久久综合久久综合久久综合| 欧美激情亚洲综合一区| 久久av一区二区三区| 欧美精品在线观看播放| 精品成人一区二区三区四区| 午夜精品久久久久久久久久久| 欧美高清视频www夜色资源网| 亚洲一区二区三区在线| 欧美日韩和欧美的一区二区| 亚洲激情在线视频| 老牛影视一区二区三区| 性色av一区二区三区在线观看| 欧美日韩国产一区二区三区| 91久久久亚洲精品| 老巨人导航500精品| 久久久久国内| 国内综合精品午夜久久资源| 久久av红桃一区二区小说| 妖精视频成人观看www| 欧美日韩中文字幕在线| 日韩亚洲在线观看| 91久久香蕉国产日韩欧美9色 | 欧美噜噜久久久xxx| 91久久黄色| 欧美激情导航| 欧美国产第一页| 日韩视频在线一区二区| 欧美激情久久久| 欧美高清视频一区二区| 亚洲伦理精品| 日韩五码在线| 国产精品日韩精品欧美在线| 欧美一区二区免费| 欧美主播一区二区三区美女 久久精品人 | 亚洲欧美国产不卡| 国产毛片一区| 噜噜噜躁狠狠躁狠狠精品视频| 久久久久久久综合狠狠综合| 亚洲国产精品123| 亚洲国产精品嫩草影院| 欧美色区777第一页| 久久国产精品一区二区| 久久不射中文字幕| 亚洲精品国产精品国自产在线 | 欧美大片免费观看在线观看网站推荐 | 免费成人高清视频| 亚洲欧洲一区二区在线观看| 亚洲精品影视在线观看| 国产伦精品一区二区三区免费迷| 久久乐国产精品| 欧美搞黄网站| 亚洲影院一区| 久久久久久九九九九| 国内精品久久久久影院色| 亚洲午夜日本在线观看| 亚洲精品国产精品国自产观看浪潮 | 亚洲国产精品va| 一二三四社区欧美黄| 亚洲在线免费视频| 久久亚洲春色中文字幕久久久| 国产日产亚洲精品| 亚洲精品一区在线观看香蕉| 日韩亚洲欧美成人| 亚洲第一视频| 亚洲一区免费看| 亚洲精品社区| 欧美一级午夜免费电影| 亚洲精品影院| 久久久777| 亚洲欧美日韩中文播放| 久久永久免费| 欧美在线3区| 欧美精品在线播放| 欧美成人综合网站| 国产免费成人av| a91a精品视频在线观看| 在线免费观看欧美| 欧美在线免费| 亚洲女ⅴideoshd黑人| 欧美国产欧美亚洲国产日韩mv天天看完整| 香蕉av777xxx色综合一区| 欧美激情区在线播放| 免费成人性网站| 国内精品视频一区| 午夜精品在线观看| 亚洲欧美日本视频在线观看| 欧美高清在线一区二区| 欧美不卡在线| 尤物yw午夜国产精品视频| 亚洲欧美日韩在线观看a三区| 一区二区三区视频在线播放| 欧美成年人视频网站| 欧美成人免费在线观看| 极品尤物一区二区三区| 欧美一区二区视频网站| 久久er精品视频| 国产一区白浆| 久久精品国产2020观看福利| 久久精品日韩欧美| 国产一区91精品张津瑜| 欧美在线在线| 老司机午夜精品| 亚洲第一天堂无码专区| 蜜月aⅴ免费一区二区三区| 欧美国产精品久久| 亚洲免费观看高清完整版在线观看熊 | 中文精品99久久国产香蕉| 免费欧美日韩| 亚洲国产高清高潮精品美女| 91久久夜色精品国产网站| 欧美sm视频| 日韩视频精品在线观看| 亚洲一区二区三区四区五区午夜| 欧美日韩一区二区国产| 亚洲一区欧美二区| 玖玖精品视频| 日韩视频在线观看国产| 国产精品久久久久久久久久免费| 亚洲欧美日韩精品久久| 久久一本综合频道| 亚洲精品中文字幕有码专区| 欧美视频日韩视频| 欧美一区二区三区视频在线| 欧美高清不卡在线| 亚洲欧美欧美一区二区三区| 一区二区三区在线高清| 欧美日韩国内| 久久九九免费| 一区二区三区视频观看| 久久综合九色综合网站| 亚洲最新视频在线| 国产午夜精品一区二区三区视频| 两个人的视频www国产精品| 日韩午夜在线视频| 久久精品成人| 日韩视频在线观看| 国产综合色在线视频区| 欧美母乳在线| 久久疯狂做爰流白浆xx| 日韩视频免费看| 毛片一区二区| 亚洲欧美欧美一区二区三区| 91久久精品网| 国产性天天综合网| 欧美日韩一区二区在线| 久久亚洲图片| 亚洲男人的天堂在线| 91久久精品国产| 蜜桃av噜噜一区二区三区| 欧美一级艳片视频免费观看| 99国产一区二区三精品乱码| 一色屋精品视频在线看| 国产精品综合久久久| 欧美日韩中文在线| 欧美日韩成人精品| 免费欧美视频| 久久综合九色九九| 久久久久高清|