發現環 C語言

2021-10-04 23:29:00 字數 981 閱讀 1222

小明的實驗室有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

尋找形成環的所有電腦編號

1:用nums陣列儲存每個數字出現的次數。

2:用object陣列儲存對應的下邊所對應的線路編號的總和。

3:尋找環

來個無限迴圈

}if(flag==0)

跳出迴圈

#include

#include

int main()

, object[1000] = ;

int n;

int a, b;

int i;

scanf_s("%d", &n);

for (i = 0; i < n; i++)

while (1)

} if (flag == 0) }

for (i = 1; i <= n; i++)

}system("pause");

return 0;

藍橋杯 歷屆試題 發現環 c語言

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

歷屆試題 發現環

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

歷屆試題 發現環

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