COGS 08 備用交換機 題解 S B S

2021-07-23 11:53:09 字數 1620 閱讀 8486

8. 備用交換機

★★   輸入檔案:gd.in輸出檔案:gd.out簡單對比

時間限制:1 s   記憶體限制:128 mb

【問題描述】

【輸入格式】

輸入檔案有若干行

第一行,乙個整數n,表示共有n個城市(2<=n<=100)

下面有若干行,每行2個數a、b,a、b是城市編號,表示a與b之間有直接通訊線路。

【輸出格式】

輸出檔案有若干行

第一行,1個整數m,表示需m個備用交換機,下面有m行,每行有乙個整數,表示需配備交換機的城市編號,輸出順序按編號由小到大。如果沒有城市需配備備用交換機則輸出0。

【輸入輸出樣例】

輸入檔名: gd.in

1 22 3

2 43 4

4 54 6

4 75 6

6 7輸出檔名:gd.out

————————————————————我是分割線————————————————————————

tarjan演算法模改,求割點。

模板題。

p.s.這個oj上竟然必須打輸入輸出,否則爆零。(真是滑稽)

1

/*cogs 08

2by s.b.s.

*/3 #include4 #include5 #include6 #include7 #include8 #include9 #include10 #include11 #include12 #include13

#define maxn 121

14#define inf 0x7fffffff

15#define f(i,j,k) for(int i=j;i<=k;i++)

16#define ff(i,j,k) for(int i=j;i>=k;i--)

17#define m(a,b) memset(a,b,sizeof(b))

18using

namespace

std;

19int

read()

22while(ch>='

0'&&ch<='9')

23return x*f;24}

25 vectoredge[maxn];

26int

n,m,dfn[maxn],low[maxn];

27int cnt,tim=0

,cut;

28int

root;

29int ans=0

;30 inline void addedge(int u,int

v)31

35bool

gd[maxn];

36 inline void dfs(int

u)37 53

}54else

55 low[u]=min(low[u],dfn[v]);56}

57}58int

main()

5969 f(i,1

,n)7076}

77 cout

78 f(i,1

,n)81

return0;

82 }

cogs 08

COGS 8 備用交換機

問題描述 輸入格式 輸入檔案有若干行 第一行,乙個整數n,表示共有n個城市 2 n 100 下面有若干行,每行2個數a b,a b是城市編號,表示a與b之間有直接通訊線路。輸出格式 輸出檔案有若干行 第一行,1個整數m,表示需m個備用交換機,下面有m行,每行有乙個整數,表示需配備交換機的城市編號,輸...

備用交換機

題目描述 某個城市如果其交換機損壞,不僅本城市通訊會中斷,還會造成其它城市通訊中斷,則需要配備備用交換機。現詢問需要配備備用交換機的城市的總數,以及需要配備備用交換機的城市的編號。輸入描述 第一行輸入乙個整數n,表示共有n個城市 2 n 100 接下來若干行,每行輸入兩個數a b是城市編號,表示城市...

備用交換機 割點

題目內容 n交換機數量有限,不能全部配備,只能給部分重要城市配置。於是規定 如果某個城市由於交換機損壞,不僅本城市通訊中斷,還造成其它城市通訊中斷,則配備備 用交換機。請你根據城市線路情況,計算需配備備用交換機的城市個數,及需配備備用交換機城市的編號。分析分析可得,如果某個城市由於交換機損壞,不僅本...