码迷,mamicode.com
首页 >  
搜索关键字:有向图    ( 2378个结果
小结:双连通分量 & 强连通分量 & 割点 & 割边
概要:各种dfs时间戳。。全是tarjan(或加上他的小伙伴)无限膜拜tarjan orzzzzzzzzz技巧及注意:强连通分量是有向图,双连通分量是无向图。强连通分量找环时的决策和双连通的决策十分相似,但不完全相同。强连通分量在if(FF[v])后边的else if还要特判是否在栈里,即vis[v...
分类:其他好文   时间:2014-10-01 19:11:11    阅读次数:190
UVA11324-- The Largest Clique(SCC+DP)
题目链接 题意:给出一张有向图,求一个结点数最大的结点集,使得该结点集中任意两个结点u和v满足:要么u可以到到v,要么v可以到达u(u和v可以互相到达) 思路:我们可以缩点,用Tarjan求出所有强连通分量,让每个SCC的权值等于它的结点个数。由于SCC图是有一个DAG,使用DP求解。 代码: #include #include #include #inclu...
分类:其他好文   时间:2014-09-28 13:47:32    阅读次数:153
UVALive4287-- Proving Equivalences(SCC+Tarjan)
题目链接 题意:证明n个命题全部等价,已经给出m此推导,求至少还要几次推导才能完成整个证明。 思路:可以将命题看作结点,推导看作有向边,则本题就能转化为n个结点m条边的有向图。利用tarjan算法得到所有强连通分量,将这些强连通分量当作一个点,得到一个DAG。之后就可以求次数了。注意当强连通数量为1时,就代表着证明已经完成了。 代码: #include #incl...
分类:其他好文   时间:2014-09-28 10:31:52    阅读次数:166
树的问题小结(最小生成树、次小生成树、最小树形图、LCA、最小支配集、最小点覆盖、最大独立集)
树的定义:连通无回路的无向图是一棵树。有关树的问题:1、最小生成树。2、次小生成树。3、有向图的最小树形图。4、LCA(树上两点的最近公共祖先)。5、树的最小支配集、最小点覆盖、最大独立集。一、最小生成树解决的问题是:求无向图中边权值之和最小的生成树。算法有Kruskal和Prim。Kruskal使...
分类:其他好文   时间:2014-09-27 20:08:50    阅读次数:285
hdu 2485 Destroying the bus stations 最小费用最大流
题意: 最少需要几个点才能使得有向图中1->n的距离大于k。分析: 删除某一点的以后,与它相连的所有边都不存在了,相当于点的容量为1。但是在网络流中我们只能直接限制边的容量。所以需要拆点来完成对的点容量的限制。对于边i -> j,先建边i ->i',再建i'->j。i ->i'只能建一次,容量为.....
分类:其他好文   时间:2014-09-26 23:45:28    阅读次数:310
Play on Words UVA 10129 (有向图的欧拉路)
说说: 这道题的题意很简单,就是给你一些单词,问是否能形成一个句子,使前一个单词的最后一个字母等于后一个单词的第一个字母。本质上来说就是有向图的欧拉路问题,当然存在欧拉回路也是OK的。一开始的时候,我以为存在欧拉路只需判断两种情况:一,是存在欧拉回路,即每个节点的入度等于出度。二,存在欧拉路,有且仅有一个节点的入度比出度大一,一个节点的出度比入度大一。只要满足任意其中一种情况即可。事实上不是这样...
分类:其他好文   时间:2014-09-25 23:43:38    阅读次数:174
HDU 2254 奥运(矩阵)
题目地址:HDU 2254 必须得吐槽一下。。这题的数据是又弱又坑。。样例不过都能AC。。还有。。居然还有重边。。WA了一晚上。。 吐槽完毕,言归正传。。 根据离散数学里面的可达矩阵的性质,我们知道一个有向图的邻接矩阵的前n次幂的和即为可达矩阵,那么要求[t1-t2]之内的路径的条数,因为题目说了t1 = 0的时候为0。那么假设邻接矩阵为A,那么要求的就是A^(t1-1)+A^(t1)+.....
分类:其他好文   时间:2014-09-25 22:39:38    阅读次数:136
【数据结构】DFS求有向图的强连通分量
用十字链表结构写的,根据数据结构书上的描述和自己的理解实现。但理解的不透彻,所以不知道有没有错误。但实验了几个都ok.#include #include using namespace std;//有向图十字链表表示#define MAX_VERTEX_NUM 20typedef struct Ar...
分类:其他好文   时间:2014-09-25 17:40:59    阅读次数:188
UVA 1486 - Transportation(网络流+拆边)
UVA 1486 - Transportation 题目链接 题意:一个有向图上运输k货物,有一些边,每个边一个系数a,经过该边如果有x货物,就要缴纳a x x的钱,问运输从1到n最小的代价 思路:费用流,这题边的容量c最大只有5,所以可以拆边,一条边拆成c条边,每条容量1,对应相应的代价为a * (i^2 - (i - 1)^2),然后跑一下费用流即可 代码: ...
分类:其他好文   时间:2014-09-25 16:41:49    阅读次数:244
【编程题目】求一个有向连通图的割点,割点的定义是,如果除去此节点和与其相关的边, 有向图不再连通
39.(树、图、算法)(2).求一个有向连通图的割点,割点的定义是,如果除去此节点和与其相关的边,有向图不再连通,描述算法。思路:这里有个问题,对于图的连通性,我默认它要求强连通。采用了最简单的办法,即每次删掉一条边,判断图还是否连通。若变得不连通了就认为此点是割点。连通性的判断也采用了直觉上简单的...
分类:其他好文   时间:2014-09-25 10:47:48    阅读次数:411
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!