连通性问题
kalilili
双眼闭三年。
展开
-
POJ2375 Cow Ski Area (添最少边构造强连通分量的某个与入度出度相关的结论)
题意:本题描述了一片滑雪场,并且规定奶牛从一个点只能向它相邻的并且高度不大于它的点运动,现在想要在某些点对之间加上缆车使得奶牛也可以从较低点到达较高点,问最少需要多少辆这样的缆车就可以使得奶牛可以从任意一个点运动到滑雪场的每个角落。 思路:即问至少加多少条边使图变成强联通图,先缩点成DAG。 不难知道强连通分量的所有节点的入度和出度均不为0,可以统计DAG上的入度和出度为0的个数分别是a,b。原创 2015-04-19 01:37:50 · 1451 阅读 · 0 评论 -
POJ 1523 SPF(割点)
大致题意: 给出一个连通的无向图,求哪些点是割点,对于每个割点,求出去掉这个点后连通分量的个数。如果没有割点的话输出“ No SPF nodes”。 思路: 求割点用tarjan即可,然后要求删除割点后连通分量的个数,每次找到割点,再在从割点dfs即可,也可以直接在tarjan算法中记录child个数。那么如果割点是根,那么答案就是child,不是根的割点答案是child+1 //1原创 2015-04-23 22:03:32 · 863 阅读 · 0 评论 -
POJ 3114 Countries in War(强连通分量+最短路)
题目大意: n个间谍 他们之间传送信息需要一定的时间一个联通分量里面的间谍属于一个国家,之间的信息传递不需要时间然后问你从一个间谍传一个信息到另一个间谍那需要最少时间 也可能传不到 思路:先缩点,再最短路,由于n最大只有500.可以用邻接矩阵,而且对缩点后的DAG的边权可以做贪心处理,只留两个强连通分量间的最短边长即可。 //2852K 297MS C++ 2595B #include原创 2015-04-23 21:55:24 · 992 阅读 · 0 评论 -
POJ 3592 Instantaneous Transference(建图强连通+单源最长路)
题目大意:有一张n*m的地图,每个点上可能是数字,代表矿石的数目,可能是*,表示一个传送阵,送往某个坐标,可能是#,代表不通。每次矿车只能往右方或者下方走一格,问从(0,0)点出发可以最多收集到多少矿石 思路:先根据矿车的可移动的方向建有向图,“*”导致可能会有环,所以先缩点变成有向无环图。 然后就是DAG上的最长路问题(拓扑排序+dp) 而且也是单源最长路问题,可以用最短路算法去做原创 2015-04-20 16:06:32 · 707 阅读 · 0 评论 -
HDU 3072 Intelligence System(tarjan+DAG上的最小生成树形图)
题意:一个有向图,每条边都有花费,问从0节点把消息扩散至每个点所需的最小花费,且一个强连通分量里的节点间传消息不需花费 思路:先缩点成DAG,再求以0为根的最小生成树形图。想一下就知道对每个节点(除了0节点)找一个最近的前驱点即可,因为DAG无环,所以每个节点(除了0节点)这样找下去必然每点的入度均为1,显然最终一定是一个树形图,而且必然是最小生成树 #include #include #in原创 2015-04-24 22:39:49 · 988 阅读 · 0 评论 -
POJ 3352 Road Construction(添最少边构造边双连通图的结论)
题意:已知无向图,问添加最少的边使之成为边双连通图 思路:显然先缩点成一棵树,添加最少边使一棵树的边双连通 此处有结论:对于一棵树添加(1+leaf)>>1 条无向边就能构造成一个双连通图,构造方法显然(脑补一下 //216K 63MS C++ 1754B #include #include #include #include原创 2015-04-23 22:12:18 · 1006 阅读 · 0 评论 -
Codeforces Round #143 (Div. 2) E. Cactus(LCA+无向图缩点)
E. Cactus time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output A connected undirected graph is called a vertex c原创 2015-07-20 22:29:22 · 791 阅读 · 0 评论 -
Codeforces Round #Pi (Div. 2) E. President and Roads(边双无向图缩点(有重边)+最短路)
E. President and Roads time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Berland has n cities, the capital is原创 2015-08-08 10:16:10 · 983 阅读 · 0 评论