Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <stdio.h>#include <string.h>#include <algorithm>#include <queue>#include <stack>using namespace std;const int N=21000;const int M=101000;const int inf=1<<29;int pnt[M],nxt[M],head[N],e;int ppnt[M],nnxt[M],hhead[N],ee;int low[N],dfn[N],belong[N],num[N],js,ss;bool pan[N];int n,m,cc[N],bj[N];stack<int> q;void add(int u,int v){pnt[e]=v;nxt[e]=head[u];head[u]=e++;}void aadd(int u,int v){ppnt[ee]=v;nnxt[ee]=hhead[u];hhead[u]=ee++;}void init(){js=ss=e=ee=0;