CCF通訊網路(水題)

2021-08-21 21:03:51 字數 588 閱讀 7664

第一反應是用flody把初始距離為inf,然後右邊可達為1

到最後判斷每個頂點與其他頂點是不是都可達,如果可達number++;

但是超時了60分 = =

後來發現直接裸個d

fs把圖遍歷一下就直接過了  真尷尬= =

可惡!60:#include#includeusing namespace std;

const int inf=999999999;

int arc1[1002][1002];

int arc2[1002][1002];

int main()

for(i=0;i>x>>y;

arc1[x][y]=1;

arc2[y][x]=1;

}for(k=1;k<=n;k++)

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

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

dfs1(i);

dfs2(i);

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

if(visit1[j]==0&&visit2[j]==0)

if(flag==1) number++;

}cout<0.0

通訊網路 ccf

試題編號 201709 4 試題名稱 通訊網路 時間限制 1.0s 記憶體限制 256.0mb 問題描述 問題描述 某國的軍隊由n個部門組成,為了提高安全性,部門之間建立了m條通路,每條通路只能單向傳遞資訊,即一條從部門a到部門b的通路只能由a向b傳遞資訊。資訊可以通過中轉的方式進行傳遞,即如果a能...

CCF 2017 09 04 通訊網路

剛開始想的是dfs進行遍歷,然後統計前後這個節點做能到達的節點個數,但卻發現要是有環的話,就沒法做了,想水水看能得幾分,但卻在處理上有一些問題。蒟蒻。看了題解,原來往dfs裡面傳進去兩個當前節點就可以的,然後用乙個節點負責進行遍歷看子節點,另乙個負責統計它能夠到達的節點。然後進行兩遍for迴圈就能夠...

CCF 201709 4 通訊網路

問題描述 某國的軍隊由n個部門組成,為了提高安全性,部門之間建立了m條通路,每條通路只能單向傳遞資訊,即一條從部門a到部門b的通路只能由a向b傳遞資訊。資訊可以通過中轉的方式進行傳遞,即如果a能將資訊傳遞到b,b又能將資訊傳遞到c,則a能將資訊傳遞到c。一條資訊可能通過多次中轉最終到達目的地。由於保...