神坑题。这题的坑点有1.判断连通,2.有重边,3.至少要有一个人背炸药

因为有重边,tarjan的时候不能用子结点和父节点来判断是不是树边的二次访问,所以我的采用用前向星存边编号的奇偶性关系,用^1来判断是不是树边

#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int maxe = 1000005<<1;
const int maxv = 1005;
int clock;
int dfn[maxv],low[maxv],ecnt;
int head[maxv],nxt[maxe],to[maxe],wei[maxe]; void init()
{
clock = ecnt = 0;
memset(head,-1,sizeof(head));
memset(dfn,0,sizeof(dfn));
} void addEdge(int u,int v,int w)
{
to[ecnt] = v;
wei[ecnt] = w;
nxt[ecnt] = head[u];
head[u] = ecnt++;
} int ans; void tarjan(int u,int fa)
{
dfn[u] = low[u] = ++clock;
for(int i = head[u]; ~i ; i = nxt[i]){
int v = to[i];
if(i == (fa^1)) continue;
if(!dfn[v]){
tarjan(v,i);
low[u] = min(low[u],low[v]);
if(low[v] > dfn[u]){
ans = min(ans,wei[i]);
}
}else {
low[u] = min(low[u],dfn[v]);
}
}
} int sum;
bool vis[maxv];
void dfs(int u){
if(vis[u]) return;
sum++;
vis[u] = 1;
for(int i = head[u]; ~i ; i = nxt[i]){
dfs(to[i]);
}
}
const int INF = 1e9;
int main()
{
int N,M;
while(~scanf("%d%d",&N,&M)&&N){
init();
for(int i = 0; i < M; i++){
int U,V,W;
scanf("%d%d%d",&U,&V,&W);
addEdge(U,V,W);
addEdge(V,U,W);
}
memset(vis,0,sizeof(vis));
sum = 0;
dfs(1);
if(sum < N) { printf("0\n"); continue; }
ans = INF;
tarjan(1,-1);
if(ans == INF) { printf("-1\n"); continue; }
ans = max(ans,1);
printf("%d\n",ans);
}
return 0;
}

HDU 4738 Caocao's Bridges taijan (求割边,神坑)的更多相关文章

  1. HDU 4738——Caocao's Bridges——————【求割边/桥的最小权值】

     Caocao's Bridges Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u S ...

  2. hdu 4738 Caocao's Bridges (tarjan求桥)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4738 题目大意:给一些点,用一些边把这些点相连,每一条边上有一个权值.现在要你破坏任意一个边(要付出相 ...

  3. 2013杭州网赛 1001 hdu 4738 Caocao's Bridges(双连通分量割边/桥)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4738 题意:有n座岛和m条桥,每条桥上有w个兵守着,现在要派不少于守桥的士兵数的人去炸桥,只能炸一条桥 ...

  4. Hdu 4738 Caocao's Bridges (连通图+桥)

    题目链接: Hdu 4738 Caocao's Bridges 题目描述: 有n个岛屿,m个桥,问是否可以去掉一个花费最小的桥,使得岛屿边的不连通? 解题思路: 去掉一个边使得岛屿不连通,那么去掉的这 ...

  5. HDU 4738 Caocao's Bridges(Tarjan求桥+重边判断)

    Caocao's Bridges Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  6. HDU 4738 Caocao's Bridges (2013杭州网络赛1001题,连通图,求桥)

    Caocao's Bridges Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  7. hdu 4738 Caocao's Bridges 图--桥的判断模板

    Caocao's Bridges Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  8. HDU——4738 Caocao's Bridges

    Caocao's Bridges Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  9. HDU 4738 Caocao's Bridges

    Caocao's Bridges Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

随机推荐

  1. sqlserver2012——XML查询

    1. CREATE TABLE STUDENT { S_ID INT, S_DATA xml } INSERT INTO STUDENT VALUES { 1, '<学生信息><姓名 ...

  2. 数据库路由中间件MyCat - 源代码篇(9)

    此文已由作者张镐薪授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 3. 连接模块 3.5 后端连接 3.5.1 后端连接获取与负载均衡 上一节我们讲了后端连接的基本建立和响应 ...

  3. ansible无网络安装openstack(Newton)

    概要 apt使用本地源,pip使用本地源 网络环境 物理机环境 网络名 网络地址 VLAN br-ex 192.168.200.250/24 90 br-mgmt 92.0.0.100/24 92 a ...

  4. 在element-ui的表格组件中为表头添加Tooltip 文字提示

    在使用表格组件的时候经常遇到的问题,列数很多,而表头的文字描述长度很长 <el-table-column v-if="!column.event" v-for="( ...

  5. IT 面试题

    1.JDK1.X新增的功能   ==>>> 2.字符流和字节流的区别,使用场景,相关类   ==>>> 字节流与字符流 在Java.io包中操作文件内容的主要有两大 ...

  6. 爬虫之scapy

    一 介绍 Scrapy一个开源和协作的框架,其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的,使用它可以以快速.简单.可扩展的方式从网站中提取所需的数据.但目前Scrapy的用途十分广泛,可 ...

  7. IDEA 小技巧之书签与收藏

    原文地址:IDEA 小技巧之书签与收藏 最近翻阅 Spring 源码,由于源码调用链路很长,等看了十几类方法之后,想看前面调用方法就很不方便,需要查找历史的查看记录.还有时候看着看着就忘了中间某个方法 ...

  8. loj2734「JOISC 2016 Day 2」女装大佬 || 洛谷P3615 如厕计划

    loj2734 洛谷P3615 http://218.5.5.242:9021/problem/185 不会做... 题解(来自ditoly): 这一步更详细的解释(来自kkksc03): 还是从后面 ...

  9. php:一个题目,关于优先级,及$a++和$a=$a+1,

    这几天常看到微博上转发的一条微博:就做了下,竟做错了,所以就试着分析了下~~ 这是微博: 这是代码: <?php $c = 3; $b = 6; if ($c = 4 || $b = 4) { ...

  10. Net Core2.0 基于QuartzNet任务管理系统

    Net Core2.0 基于QuartzNet任务管理系统 Quartz.NET官网地址:https://www.quartz-scheduler.net/ Quartz.NET文档地址:https: ...