本文共 438 字,大约阅读时间需要 1 分钟。
不断删入度为1的点及其出边。
#includeusing namespace std;const int maxn=1e5+10;vector vec[maxn];int InDeg[maxn],seq[maxn],tot;int T,N,M;bool topological(){ queue q; tot=0; for (int i=1;i<=N;i++) { if (!InDeg[i]) { q.push(i); seq[tot++]=i; } } int cnt=0; while (!q.empty()) { int u=q.front(); q.pop(); cnt++; for (int i=0;i
转载地址:http://jruen.baihongyu.com/