"题目链接" 题意 给定一个$N$个点的无向图,求从任意一个点出发,经过所有点的最短路径长度(每个点 至多可以经过两次 )。 思路 状态表示、转移及大体思路 与 "poj 3311 Hie with the Pie 经过所有点(可重)的最短路径 floyd + 状压dp" 相同。 但,因为是每个点 ...
分类:
其他好文 时间:
2018-02-15 16:54:43
阅读次数:
175
题目大意: 最短路; 基本思路: 基于动态规划的floyd 代码如下: ...
分类:
编程语言 时间:
2018-02-14 19:42:27
阅读次数:
170
1027: [JSOI2007]合金 Description 某公司加工一种由铁、铝、锡组成的合金。他们的工作很简单。首先进口一些铁铝锡合金原材料,不同种类的原材料中铁铝锡的比重不同。然后,将每种原材料取出一定量,经过融解、混合,得到新的合金。新的合金的铁铝锡比重为用户所需要的比重。 现在,用户给出 ...
分类:
Web程序 时间:
2018-02-14 13:51:55
阅读次数:
265
【传送门:BZOJ1266】 简要题意: 给出一个有n个点,m条无向边的图,每条边有长度和摧毁的代价,首先求出从1到n的最短路径,然后要求花费最小代价摧毁一些边,使得图中1到n的最短路径变长,求出最小代价 题解: 求最短路径,简直。。好吧,SPFA或floyd搞定 求最小代价,我们可以想一下,先把所 ...
分类:
其他好文 时间:
2018-02-13 15:41:51
阅读次数:
188
补写。 学了学用bitset优化floyd,做这题比用强联通缩点+DP方便多了。 bitset具体就是一串编码,比如说定义bitset<2100>b,b就是一个2100位的01串。 由于位运算的存在,那么folyd的时候可以省掉一个j的循环,直接用整个串和另一个串做或运算 就像这样 for(int ...
分类:
Web程序 时间:
2018-02-13 12:26:26
阅读次数:
198
*基本思想:传递闭包 所谓传递性,可以这样理解:对于一个节点i,如果j能到i,i能到k,那么j就能到k。求传递闭包,就是把图中所有满足这样传递性的节点都弄出来,计算完成后,我们也就知道任意两个节点之间是否相连。 初始化 1. 将不可以直接到达的距离(map[i][j])设为 inf (0x3f3f3 ...
分类:
编程语言 时间:
2018-02-11 10:46:20
阅读次数:
195
BZOJ_1774_[Usaco2009 Dec]Toll 过路费_floyd 题意: 跟所有人一样,农夫约翰以着宁教我负天下牛,休叫天下牛负我的伟大精神,日日夜夜苦思生 财之道。为了发财,他设置了一系列的规章制度,使得任何一只奶牛在农场中的道路行走,都 要向农夫约翰上交过路费。 农场中由N(1 < ...
分类:
其他好文 时间:
2018-02-10 19:27:18
阅读次数:
189
https://www.luogu.org/problemnew/show/P1613 Floyd判断是否一步到达 将一步到达的连变跑Floyd ...
分类:
其他好文 时间:
2018-02-10 11:26:04
阅读次数:
112
一般来说,我们会用三种存图方式,分别是邻接矩阵、邻接表、vector模仿邻接表。 邻接矩阵 就是开一个二维数组Map[i][j]表示从i到j的距离;可以清楚地表示出点与点之间的关系; 用Floyd、Prime处理问题时,通常就用这种方式来存图。 邻接表 我们用三个数组来分别存储出点与边、边与同出点的 ...
分类:
其他好文 时间:
2018-02-07 21:22:57
阅读次数:
186
由于此算法时间复杂度为O(V³)。大多数情况下不如迪杰斯特拉算法的。迪杰斯特拉算法适合于节点疏散的图。 演示样例图例如以下: Step 1 创建节点与边的最短路径结果表(直接可达关系)。数值表示距离。INF表示不可达 1 2 3 4 1 0 8 INF 1 2 INF 0 1 INF 3 4 INF ...
分类:
编程语言 时间:
2018-02-06 20:30:17
阅读次数:
206