Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <iostream>#include <algorithm>#include <cstdio>#include <string>#include <cstring>#include <cmath>#include <vector>#include <list>#include <map>#include <set>#include <deque>#include <queue>#include <stack>#include <bitset>#include <functional>#include <sstream>#include <iomanip>#include <cmath>#include <cstdlib>#include <ctime>#include <limits.h>#include <map>using namespace std;#define NodeMax 20005#define ArcMax 100005int dfn[NodeMax];int low[NodeMax];int parent[NodeMax];bool visited[NodeMax];int GupId[ArcMax];int edgeStack[ArcMax];