在给出的两个点上加一条边,求剩下桥的数量,,不会LCA在线,就用了最普通的,先Tarjan双联通缩点,然后将缩完的图建成一棵树,树的所有边就是桥了,如果在任意两点间加一条边的话,那么从两点到最近公共祖先的所有边都不是桥了。。。。。。
#pragma comment(linker, "/STACK:10240000000000,10240000000000")
#include<stdio.h>
#include<stack>
#include<string.h>
#define N 100010
using namespace std;
int belong[N],low[N],dfs[N],head[N],num,n,idx,ans,nume,vis[N];
struct edge
{
int st,ed,......
阅读全文