注意是有向图所以tarjan内不需要也不能判断回边
非
} else if (vis[v] && i != (fa ^ 1)) low[u] = min(low[u], dfn[v]);
而是
} else if (vis[v]) low[u] = min(low[u], dfn[v]);