HDU-4737-Caocao’s Bridges
题目大意
给你n个点,m条边。让你选着删去一条边是的这个图不连通,每条边都有一个权值,让你找出最小的权值。
解题思路
利用tarjon缩点,然后找去桥,统计桥的最小权值的就可以了。
但是这个题好几个坑点
1,有重边,如果这个桥有重边,那么将不能选择
2,如果本来就不是一个连通图,那么就不用派人去了
3,如果桥的权值为0,那么就最少一个人去了。
代码
#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int mx=1010;
const ll mod=1000000007;
int dfn[mx],low[mx];
int mp[1010][1010];
bool vis[mx];
int cnt,n,m;
int ans;
vector<int> ve[mx];
stack<int>st;
void tarjan(int u,int fa){
dfn[u]=low[u]=++cnt;
vis[u]=1;st.push(</