題目大意:加最少的邊使有向圖變成強聯通圖,讀懂題意就好辦,網賽時通過率很高。
照以前hdu2767、3836的**改的。(幾乎沒怎麼變…)
#include
#include
#include
#include
#include
using
namespace
std;
const
int maxn = 20000+10;
vector
grap[maxn]; //稀疏圖,用鄰接表表示圖
stack
s;int low[maxn]; //low[u] 為u或u的子樹能夠追溯到的最早的棧中節點的次序編號
int num[maxn]; //num[u] 為u搜尋的次序編號(時間戳)
int visited[maxn]; //標記是否已經被搜尋過
int instack[maxn]; //標記是否在棧中
int index1;
int cnt_scc; //記錄總共將圖縮成多少個點
int belong[maxn]; //belong[i] = j 表示原圖的點i縮點後為點j
int min(int a, int b)
int max(int a, int b)
void init(int n)
while(!s.empty())
memset(instack,0,sizeof(instack));
memset(visited,0,sizeof(visited));
memset(low,-1,sizeof(low));
memset(num,-1,sizeof(num));
memset(belong,-1,sizeof(belong));
index1 = 0;
cnt_scc = 0;
}//找出連通分支,並縮點
void tarjan(int v)
else
if(instack[w]) //(v,w)為後向邊
}int u;
if(low[v] == num[v]) //滿足強連通分支條件,進行縮點
while(u != v);
}}int main()
for(int i=1; i<=n; i++)
}//求縮點後,各個頂點的出度和入度
for(int i=1; i<=n; i++)}}
a = b = 0;
for(int i=1; i<=cnt_scc; i++)
if(cnt_scc == 1) //如果圖已經為強連通圖
cout
<<"0"
cout
0;}
令人完全崩潰的網賽。。。
今年開始第一次正式作acm icpc的比賽,之前對於網賽的情況了解不多。乙個學長的簽名中這樣寫道 網賽比的就是網速。以前看著這話有點模糊,不過經歷了今天的杭電的網賽之後,網速確實能夠決定網賽。前幾站中,網速最好的就是北京的網賽了,哈爾濱的雖然網速慢了點,不過還是比較穩定,就是判題的時候,等的久點 但...
Huawei網賽學習筆記(一)
劃重點 運營商的混搭架構 hadoop基礎技術 傳統的資料處理系統面臨的問題 大資料的資料特徵 資料量大 格式複雜 響應速度要求高 資料價值密度低 hdfs是基於谷歌的 開發,具備其他分布式檔案系統的相同特徵,也具有以下特徵,高容錯 高吞吐量 大檔案儲存。yarn是hadoop中的資源管理系統,他是...
2019網路賽總結
今年的網路賽,包括從一開始的ccpc到昨天結束了的icpc,總的來說發揮是很差的,補了一暑假的圖論知識基本上是一次都沒有用到,非常的難受,說說我們不足的地方吧,首先,從一開始我就感覺出來了,我們隊伍的整體的氛圍是很差的,這個氛圍是指我們隊伍內討論的情況,就像是各打個的,乙個題目下來了基本上沒有什麼討...