演算法筆記 問題 A 通訊系統(附坑點)

2021-10-17 09:17:29 字數 1180 閱讀 9265

題目描述

某市計畫建設乙個通訊系統。按照規劃,這個系統包含若干端點,這些端點由通訊線纜鏈結。訊息可以在任何乙個端點產生,並且只能通過線纜傳送。每個端點接收訊息後會將訊息傳送到與其相連的端點,除了那個訊息傳送過來的端點。如果某個端點是產生訊息的端點,那麼訊息將被傳送到與其相連的每乙個端點。

為了提高傳送效率和節約資源,要求當訊息在某個端點生成後,其餘各個端點均能接收到訊息,並且每個端點均不會重複收到訊息。

現給你通訊系統的描述,你能判斷此系統是否符合以上要求嗎?

輸入輸入包含多組測試資料。每兩組輸入資料之間由空行分隔。

每組輸入首先包含2個整數n和m,n(1<=n<=1000)表示端點個數,m(0<=m<=n*(n-1)/2)表示通訊線路個數。

接下來m行每行輸入2個整數a和b(1<=a,b<=n),表示端點a和b由一條通訊線纜相連。兩個端點之間至多由一條線纜直接相連,並且沒有將某個端點與其自己相連的線纜。

當n和m都為0時,輸入結束。

輸出對於每組輸入,如果所給的系統描述符合題目要求,則輸出yes,否則輸出no。

樣例輸入 copy

4 3

1 22 3

3 43 1

2 30 0

樣例輸出 copy

yes

no

#include using namespace std;

const int maxn = 1000;

int father[maxn];

bool isroot[maxn];

int n, m;

/*尋找祖先*/

int findfather(int x)

while(a!=father[a])

return x;

}/*合併*/

void union(int a, int b)

}/*初始化*/

void init(int n)

}int main()

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

int ans = 0;

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

if(ans!=1)

printf("no\n");

else

printf("yes\n");

}return 0;

}

演算法筆記練習 9 6 並查集 問題 A 通訊系統

本題鏈結 題目描述 某市計畫建設乙個通訊系統。按照規劃,這個系統包含若干端點,這些端點由通訊線纜鏈結。訊息可以在任何乙個端點產生,並且只能通過線纜傳送。每個端點接收訊息後會將訊息傳送到與其相連的端點,除了那個訊息傳送過來的端點。如果某個端點是產生訊息的端點,那麼訊息將被傳送到與其相連的每乙個端點。為...

問題 A 通訊系統

題目描述 某市計畫建設乙個通訊系統。按照規劃,這個系統包含若干端點,這些端點由通訊線纜鏈結。訊息可以在任何乙個端點產生,並且只能通過線纜傳送。每個端點接收訊息後會將訊息傳送到與其相連的端點,除了那個訊息傳送過來的端點。如果某個端點是產生訊息的端點,那麼訊息將被傳送到與其相連的每乙個端點。為了提高傳送...

UNIX系統通訊 學習筆記(一)

unix系統通訊 學習筆記 1.ipc ipc系統簡介 ipc程序間通訊 interprocess communication 1.訊息佇列 message queue,q 應用與不同程序間少量資料的順序共享 2.訊號量 semaphore,s 應用與程序之間的同步與互斥的控制 3.共享記憶體 sh...