藍橋 發現環 拓撲排序判環

2021-10-10 11:49:52 字數 975 閱讀 1440

小明的實驗室有n臺電腦,編號1~n。原本這n臺電腦之間有n-1條資料鏈結相連,恰好構成乙個樹形網路。在樹形網路上,任意兩台電腦之間有唯一的路徑相連。

不過在最近一次維護網路時,管理員誤操作使得某兩台電腦之間增加了一條資料鏈結,於是網路**現了環路。環路上的電腦由於兩兩之間不再是只有一條路徑,使得這些電腦上的資料傳輸出現了bug。

為了恢復正常傳輸。小明需要找到所有在環路上的電腦,你能幫助他嗎?

第一行包含乙個整數n。

以下n行每行兩個整數a和b,表示a和b之間有一條資料鏈結相連。

對於30%的資料,1 <= n <= 1000

對於100%的資料, 1 <= n <= 100000, 1 <= a, b <= n

輸入保證合法。

按從小到大的順序輸出在環路上的電腦的編號,中間由乙個空格分隔。

樣例輸入:

51 2

3 12 4

2 55 3

樣例輸出:

1 2 3 5

#include

#include

#include

#include

#include

#include

#include

using namespace std;

int deg[

1005];

int n;

vector<

int> v[

1005];

queue<

int> q;

intmain()

for(

int i=

1; i<=n; i++)}

while

(q.size()

)}}for

(int i=

1; i<=n; i++)}

printf

("ok");

return0;

}

Coloring Edges 拓撲判環

題目大意 1.給出一張有向圖,給該圖塗色,要求同乙個環裡的邊不可以全部都為同一種顏色。問最少需要多少顏色,並輸出各邊的塗色。解題思路 1.多畫幾張圖就發現,顏色種類只會是1或者2。當不存在環的時候,全部塗1。當存在環的時候,環中可以分成兩種邊 小節點指向大節點塗1,大節點指向小節點塗2 就會發現所有...

HDU5961 傳遞 拓撲排序判環

我們稱乙個有向圖g是傳遞的,當且僅當對任意三個不同的頂點a,若g中有 一條邊從a到b且有一條邊從b到c 則g中同樣有一條邊從a到c。我們稱圖g是乙個競賽圖,當且僅當它是乙個有向圖且它的基圖是完全圖。換句 話說,將完全圖每條邊定向將得到乙個競賽圖。下圖展示的是乙個有4個頂點的競賽圖。現在,給你兩個有向...

發現環 藍橋杯

題目描述 小明的實驗室有n臺電腦,編號1 n。原本這n臺電腦之間有n 1條資料鏈結相連,恰好構成乙個樹形網路。在樹形網路上,任意兩台電腦之間有唯一的路徑相連。不過在最近一次維護網路時,管理員誤操作使得某兩台電腦之間增加了一條資料鏈結,於是網路 現了環路。環路上的電腦由於兩兩之間不再是只有一條路徑,使...