博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HDU 4612 Warm up 连通图缩点
阅读量:5012 次
发布时间:2019-06-12

本文共 858 字,大约阅读时间需要 2 分钟。

题目大意:给出一个连通图,求再一个边后,剩余的最少桥数。

题目思路:首先进行缩点得到重构后的图,求出重构后树的直径(通过两次BFS求出相距最远的两点间的距离),ans=重构图边数-树的直径

//#pragma comment(linker, "/STACK:102400000,102400000")#include
#include
#include
#include
#include
#include
#include
#include
#define MAXSIZE 200005#define LL long longusing namespace std;vector
>G;vector
>G2;int vis[MAXSIZE],low[MAXSIZE],dfn[MAXSIZE],pre[MAXSIZE],k,Time,n,m,ans,link;int dist[MAXSIZE],belong[MAXSIZE],step[MAXSIZE],Stuck[MAXSIZE],block;void Tarjan(int u,int fa){ low[u]=dfn[u]=++Time; pre[u]=fa; Stuck[k++]=u; int v,len=G[u].size(),op=0; for(int i=0;i
Q; memset(step,-1,sizeof(step)); step[s]=0; Q.push(s); while(!Q.empty()) { now=Q.front(); Q.pop(); int len=G2[now].size(); for(int i=0;i
View Code

 

转载于:https://www.cnblogs.com/alan-W/p/6535191.html

你可能感兴趣的文章
Java中接口与接口和类之间的关系
查看>>
芯片TPS70925
查看>>
linux shell 发送email 附件
查看>>
人群密度估计 CrowdCount
查看>>
JSON.parse()和JSON.stringify()
查看>>
.net 常用正则表达式
查看>>
Java泛型中的标记符含义:
查看>>
初遇GitHub
查看>>
[C# 网络编程系列]专题八:P2P编程
查看>>
Jsの练习-数组常用方法 -forEach()
查看>>
动态绑定treeview的方法
查看>>
jvm参数
查看>>
3-1 案例环境初始化
查看>>
读《构建之法》第四章和十七章有感
查看>>
01背包
查看>>
开发一个12306网站要多少钱?技术分析12306合格还是不合格
查看>>
Selenium 入门到精通系列:六
查看>>
HTTP与TCP的区别和联系
查看>>
android 实现2张图片层叠效果
查看>>
我个人所有的独立博客wordpress都被挂马
查看>>