比赛的时候很少做图论的题目,今天开了VC一个来做,貌似是队赛的题目的,一个人挑其他队。。。不过题目相对简单啦,最后排在第4位。
这道题是简单的建模题目,将其看成强连通分量就行了。
第一wa竟然是没看清楚结束条件,好吧,坑了。。
#include#include #include #include using namespace std;const int maxn = 10001;int pre[maxn] , lowlink[maxn] , sccno[maxn],dfs_clock, scc_cnt;vector g[maxn];stack S;int n , m;inline int _min(int a,int b) { return a < b ? a : b;} void dfs(int u){ pre[u] = lowlink[u] = ++dfs_clock; S.push(u); for(int i=0;i