题目大意:
Bessie的农场有F块牧场,已知当前任意两个农场之间至少有一条路径相连(并不一定直接相连)
为了从某块牧场移动到另一块牧场,Bessie和她的伙伴经常需要经过腐烂的树林。奶牛们特别
反感经过不好走的路,于是Bessie决定在农场种再建几条路,使得在去某个地方时总能够有两
条完全独立的路可够选择。那么问题来了:F块牧场,R条路,问至少再修几条路就能使得农场
中任意两个牧场之间都有至少两条相互独立的路径。
思路:
为了使农场中任意两个牧场之间都有至少两条相互独立的路径。也就是把F块牧场看做点,R...
分类:
移动开发 时间:
2015-02-17 22:22:55
阅读次数:
246
题目大意:
有一个网络,在这个网络里,电脑之间的通信只能是两台电脑间(点对点)双向通信。如下面左图
所示:如果3号电脑出故障了,那么1号和2号之间、4号和5号之间还可以通信,不过1、2和3、4
号电脑之间就不能通信了,那么3号电脑就是一个SPF节点,且3号电脑故障后,整个网络被分为
了2个子网络。那么问题来了:给你一些边。问删除某个SPF节点后,可以将图分为几个连通分量。
思路:
其实就是给你一个连通图,求出这个连通图的所有割点编号,并求出若删去其中一个割点后,原网
络被分成几个子网络。这里我们使用的思...
分类:
其他好文 时间:
2015-02-17 15:22:03
阅读次数:
111
题目链接题意:给出一张有向图,求一个结点数最大的结点集,使得该结点集中随意两个结点u和v满足:要么u能够到到v,要么v能够到达u(u和v能够互相到达)思路:我们能够缩点,用Tarjan求出全部强连通分量,让每一个SCC的权值等于它的结点个数。因为SCC图是有一个DAG,使用DP求解。代码:#incl...
分类:
其他好文 时间:
2015-02-16 10:07:57
阅读次数:
281
参考:点击打开链接 点击打开链接 点击打开链接(一些总结) 点击打开链接(不错的模板)
题目:点击打开链接
花了4天时间做完了这个专题,LCA的问题用处还是很大,同时能体会RMQ的ST算法中dp的味道.基本方法就是ST,LCA转RMQ,LCA的Tarjan,LCA倍增(这个可存储边权)
这个专题后面四道题都非常好,推荐大家做做.
细节:
1. ST方法2^i 包含自己,因此其真...
分类:
其他好文 时间:
2015-02-13 10:11:09
阅读次数:
167
11: 强联通分量第一:先求出图中有多少入度为0的点即使A的答案。第二:先tarjan缩点,有入度为0的点N 个 出度为0的点 M个 我们只有这n m分别相连 答案为max(n,m) 就可以两两相连CODE: #include#include#include#include#include...
分类:
Web程序 时间:
2015-02-12 19:52:53
阅读次数:
135
参考:点击打开链接 点击打开链接 点击打开链接(一些总结) 点击打开链接(不错的模板)
题目:点击打开链接
花了4天时间做完了这个专题,LCA的问题用处还是很大,同时能体会RMQ的ST算法中dp的味道.基本方法就是ST,LCA转RMQ,LCA的Tarjan,LCA倍增(这个可存储边权)
这个专题后面四道题都非常好,推荐大家做做.
细节:
1. ST方法2^i 包含自己,因此其真...
分类:
其他好文 时间:
2015-02-12 16:23:39
阅读次数:
210
伸展树的介绍1、出处:http://www.cnblogs.com/skywang12345/p/3604238.html伸展树(Splay Tree)是一种二叉排序树,它能在O(log n)内完成插入、查找和删除操作。它由Daniel Sleator和Robert Tarjan创造。(01) 伸展...
分类:
编程语言 时间:
2015-02-09 15:55:43
阅读次数:
260
奶牛互相之间有爱慕关系,找到被其它奶牛都喜欢的奶牛的数目用tarjan缩点,然后判断有向图中出度为0的联通分量的个数,如果为1就输出联通分量中的点的数目,否则输出0.算法源自kb模板 1 #include 2 #include 3 #include 4 const int MAXN=2001...
分类:
其他好文 时间:
2015-02-08 16:49:06
阅读次数:
171
传送门:Warm up题意:询问如何加一条边,使得剩下的桥的数目最少,输出数目。分析:tarjan缩点后,重新建图得到一棵树,树上所有边都为桥,那么找出树的直径两个端点连上,必定减少的桥数量最多,因此ans=树的边数-树的直径。#pragma comment(linker,"/STACK:10240...
分类:
其他好文 时间:
2015-02-08 16:44:18
阅读次数:
129
题目大意:
有一片供奶牛滑雪的滑雪场,可供滑雪的区域是W(宽)*L(长)的矩阵。上边有W*L个点。规定
奶牛从一个点只能向它上、下、左、右相邻的并且高度不大于它的点运动。现在想要在某些
点对之间架设缆车,使得奶牛可以从较低的地方想较高的地方运动,那么问题来了:最少需
要多少辆这样的缆车就可以使奶牛从每个点运动到可供滑雪区域的每个角落。
思路:
把奶牛符合从点u移动到点v的条件当做一条单向边。那么所有点和边就可以构成有向图。根
据奶牛可以从点u移动到邻近并且高度不大于它的点v,可以分为两种情况:(1)点v比...
分类:
其他好文 时间:
2015-02-04 13:03:57
阅读次数:
114