![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
图论
Nicolas Lee
Yesterday you said tomorrow
展开
-
Play on Words UVA - 10129 欧拉回路
Play on WordsUVA - 10129 题目类型: 欧拉道路题目:Some of the secret doors contain a very interesting word puzzle. The team of archaeologists has to solve it to open that doors. Because there is no other ...原创 2019-01-03 20:21:21 · 234 阅读 · 0 评论 -
历届试题 危险系数
问题描述抗日战争时期,冀中平原的地道战曾发挥重要作用。地道的多个站点间有通道连接,形成了庞大的网络。但也有隐患,当敌人发现了某个站点后,其它站点间可能因此会失去联系。我们来定义一个危险系数DF(x,y):对于两个站点x和y (x != y), 如果能找到一个站点z,当z被敌人破坏后,x和y不连通,那么我们称z为关于x,y的关键点。相应的,对于任意一对站点x和y,危险系数DF(x,...原创 2019-03-19 20:38:37 · 273 阅读 · 0 评论 -
Audiophobia UVA - 10048 噪音恐惧症 最短路
题目链接输入一个C个点S条边(C≤100,S≤1000)的无向带权图,边权表示该路径上的噪声值。当噪声值太大时,耳膜可能会受到伤害,所以当你从某点去往另一个点时,总是希望路上经过的最大噪声值最小。输入一些询问,每次询问两个点,输出这两点间最大噪声值最小的路图。例如,在图中,A到G的最大噪声值为80,是所有其他路径中最小的(如ABEG的最大噪声值为90)。【分析】本题的做法十分简单:...原创 2019-03-03 19:57:20 · 818 阅读 · 0 评论 -
Calling Circles UVA - 247 电话圈 有向图的传递闭包
题目链接如果两个人相互打电话(直接或间接),则说他们在同一个电话圈里。例如,a打给b,b打给c,c打给d,d打给a,则这4个人在同一个圈里;如果e打给f但f不打给e,则不能推出e和f在同一个电话圈里。输入n(n≤25)个人的m次电话,找出所有电话圈。人名只包含字母,不超过25个字符,且不重复。【分析】首先用floyd求出传递闭包,即g[i][j]表示i是否直接或者间接给j打过电话,则当...原创 2019-03-03 19:00:58 · 152 阅读 · 0 评论 -
ALGO-5 算法训练 最短路 bellman算法的两种优化
算法训练 最短路 锦囊1使用最短路算法。问题描述给定一个n个顶点,m条边的有向图(其中某些边权可能为负,但保证没有负环)。请你计算从1号点到其他点的最短路(顶点从1到n编号)。分析:具有负值的单源最短路径使用bellman-ford(贝尔曼-福特)算法。方法一:带判断的bellman-fordbellman-ford算法逐个添加最短路径,最短路径最多有n-1条,故...原创 2018-12-31 09:37:07 · 593 阅读 · 0 评论 -
Buy or Build UVA - 1151 买还是建 最小生成树+二进制枚举子集
题目链接平面上有n个点(1≤n≤1000),你的任务是让所有n个点连通。为此,你可以新建一些边,费用等于两个端点的欧几里德距离。另外还有q(0≤q≤8)个“套餐”可以购买,如果你购买了第i个套餐,该套餐中的所有结点将变得相互连通。第i个套餐的花费为Ci。如图11-6所示,一共有3个套餐:它的最优解是购买套餐1和套餐2,然后手动连接两条边,如图11-7所示。【分析】 最容...原创 2019-03-02 20:30:48 · 305 阅读 · 0 评论 -
Slim Span UVA - 1395 苗条的生成树
题目链接给出一个n(n≤100)结点的图,求苗条度(最大边减最小边的值)尽量小的生成树。【分析】首先把边按权值从小到大排序。对于一个连续的边集区间[L, R],如果这些边使得n个点全部连通,则一定存在一个苗条度不超过W[R]-W[L]的生成树(其中W[i]表示排序后第i条边的权值)。 从小到大枚举L,对于每个L,从小到大枚举R,同时用并查集将新进入[L,R]的边两端的点合并成一...原创 2019-03-02 18:00:33 · 184 阅读 · 0 评论 -
战场Paintball UVA - 11853 dfs
战场(Paintball, UVa 11853)有一个1000×1000的正方形战场,战场西南角的坐标为(0,0),西北角的坐标为(0,1000)。战场上有n(0≤n≤1000)个敌人,第i个敌人的坐标为(xi,yi),攻击范围为ri。为了避开敌人的攻击,在任意时刻,你与每个敌人的距离都必须严格大于它的攻击范围。你的任务是从战场的西边(x=0的某个点)进入,东边(x=1000的某个点)离开。如果...原创 2019-01-07 17:54:31 · 262 阅读 · 0 评论 -
Ordering Tasks UVA - 10305----拓扑排序(dfs)
题目描述约翰有许多工作要做。不幸的是,这个任务并不是独立的,如果其他任务已经执行一个任务的执行是可能的。可以用DFS求出有向无环图(DAG)的拓扑排序。如果排序失败,说明该有向图存在有向环,不是DAG。注意::判断m n是否为0的时候应该用 m||n 来确定两个都为0而不是 m && n !!#include <iostream>#include ...原创 2019-01-02 23:10:31 · 219 阅读 · 0 评论 -
奶牛跨栏--最短路径--佛洛依德算法
标题: 奶牛跨栏 标签: 图结构 最短路 详情: Farmer John 想让她的奶牛准备郡级跳跃比赛,贝茜和她的伙伴们正在练习跨栏。她们很累,所以她们想消耗最少的能量来跨栏。 显然,对于一头奶牛跳过几个矮栏是很容易的,但是高栏却很难。于是,奶牛们总是关心路径上最高的栏的高度。 奶牛的训练场中有 N (1 ≤ N ≤ 300) 个站台,分别标记为1..N。所有站台之间有M...原创 2018-12-23 20:21:27 · 423 阅读 · 0 评论 -
2.4-4回家
标题: 2.4-4回家 标签: 图结构 最短路 详情: 现在是晚餐时间,而母牛们在外面分散的牧场中。农民约翰按响了电铃,所以她们开始向谷仓走去。你的工作是要指出哪只母牛会最先到达谷仓(在给出的测试数据中,总会有且只有一只最快的母牛)。在挤奶的时候(晚餐前),每只母牛都在她自己的牧场上,一些牧场上可能没有母牛。每个牧场由一条条道路和一个或多个牧场连接(可能包括自己)。有时,...原创 2018-12-24 10:19:53 · 203 阅读 · 0 评论 -
Self-Assembly UVA - 1572 有向图判断是否有环
UVA - 1572有n(n≤40000)种边上带标号的正方形。每条边上的标号要么为一个大写字母后面跟着一个加号或减号,要么为数字00。当且仅当两条边的字母相同且符号相反时,两条边能拼在一起(00不能和任何边拼在一起,包括另一条标号为00的边)。假设输入的每种正方形都有无穷多种,而且可以旋转和翻转,你的任务是判断能否组成一个无限大的结构。每条边要么悬空(不和任何边相邻),要么和一个...原创 2019-01-05 17:15:51 · 222 阅读 · 0 评论 -
POJ1287:Networking
NetworkingTime Limit: 1000MS Memory Limit: 10000K Total Submissions: 17524 Accepted: 9129 DescriptionYou are assigned to design network connections between certain points in a ...原创 2018-12-25 20:56:23 · 129 阅读 · 0 评论 -
POJ 1523 SPF 图的割点
SPFTime Limit: 1000MS Memory Limit: 10000K Total Submissions: 10726 Accepted: 4770 DescriptionConsider the two networks shown below. Assuming that data moves around these netwo...原创 2018-12-28 11:17:27 · 173 阅读 · 0 评论 -
POJ 2239 Selecting Courses (二分图)
Selecting CoursesTime Limit: 1000MS Memory Limit: 65536K Total Submissions: 11797 Accepted: 5246 DescriptionIt is well known that it is not easy to select courses in the colleg...原创 2018-12-29 22:53:39 · 153 阅读 · 0 评论 -
ALGO-6 算法训练 安慰奶牛 两种最小生成树解法
锦囊1使用最小生成树算法。问题描述Farmer John变得非常懒,他不想再继续维护供奶牛之间供通行的道路。道路被用来连接N个牧场,牧场被连续地编号为1到N。每一个牧场都是一个奶牛的家。FJ计划除去P条道路中尽可能多的道路,但是还要保持牧场之间 的连通性。你首先要决定那些道路是需要保留的N-1条道路。第j条双向道路连接了牧场Sj和Ej(1 <= Sj<= N; 1 &...原创 2018-12-31 10:59:17 · 636 阅读 · 1 评论 -
POJ 1502 MPI Maelstrom (单源最短路径)
MPI MaelstromTime Limit: 1000MS Memory Limit: 10000K Total Submissions: 12672 Accepted: 7799 DescriptionBIT has recently taken delivery of their new supercomputer, a 32 process...原创 2018-12-29 16:19:36 · 252 阅读 · 0 评论 -
POJ 1258 Agri-Net (最小生成树)
Agri-NetTime Limit: 1000MS Memory Limit: 10000K Total Submissions: 70583 Accepted: 29218 DescriptionFarmer John has been elected mayor of his town! One of his campaign promises...原创 2018-12-28 08:45:33 · 305 阅读 · 1 评论 -
历届试题 城市建设 最小生成树--两遍kuskal
题目链接问题描述 栋栋居住在一个繁华的C市中,然而,这个城市的道路大都年久失修。市长准备重新修一些路以方便市民,于是找到了栋栋,希望栋栋能帮助他。 C市中有n个比较重要的地点,市长希望这些地点重点被考虑。现在可以修一些道路来连接其中的一些地点,每条道路可以连接其中的两个地点。另外由于C市有一条河从中穿过,也可以在其中的一些地点建设码头,所有建了码头的地点可以通过河道连接。 栋...原创 2019-03-17 14:01:14 · 395 阅读 · 0 评论