Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <stdio.h>#include <string.h>#include <stdlib.h>const int bign = 20033;const int bigm = 100033;struct edge{int v,next,edgeid;}ee[2*bigm];int head[bign];int dfn[bign];int low[bign];int visit[bign];int vt[bign];int mystack[bigm];int func[bigm];int n,m;int tgroup = 0;inline int mymin(const int &a1,const int &b1){return (a1<b1)?a1:b1;}void addEdge(int u,int v){static int eid = 1;ee[eid].v = v;ee[eid].next = head[u];head[u] = eid++;