F - Wormholes
Time Limit:2000MS Memory Limit:65536KB 64bit IO Format:%I64d
& %I64u
SubmitStatus
Description
While exploring his many farms, Farmer John has discovered a number of...
分类:
其他好文 时间:
2015-02-11 14:43:04
阅读次数:
260
优点:代码较少,复杂度不高,可以判断是否会有负环。
缺点:效率低。
算法阐述:
这个算法的思想非常简单,首先它是根据从起点向与它相连的线段开始刷新,只要满足刷新后的路径比原有路径小的话,那么就立即更新这个数据,是这个数据作为新的数
据。同时这个算法有一个很重要的优势,那就是可以判断有没有负环的存在。
负环判断原理:
这个算法的代码我在下面会有一个代码的描述,这个算法是通过一个整...
分类:
编程语言 时间:
2015-01-24 13:12:27
阅读次数:
196
【BZOJ2324】营救皮卡丘 这道题也是一道有下界的最小费用最大流。
我的题解地址:http://blog.csdn.net/vmurder/article/details/41378979
这道题其实就是模板题。
我的处理方法就是把每条边拆一条流量为1的出来,然后费用为本来费用-inf。而在建图时可以把这些扣掉的inf加回来。可以证明这种方法至少在拓扑图上是不会被卡出负环...
分类:
其他好文 时间:
2015-01-22 23:27:31
阅读次数:
463
Wormholes
Time Limit: 2000MS
Memory Limit: 65536K
Total Submissions: 32393
Accepted: 11771
Description
While exploring his many farms, Farmer John has discovered...
分类:
编程语言 时间:
2015-01-16 13:07:27
阅读次数:
320
Dijkstra算法和BellmanFord算法是两大经典的单源最短路径算法. Bellman支持负权重的边, 不支持负环. Dijkstra算法的效率更高, 不支持负边, 用处更广泛.Dijkstra的基本过程如下:初始化每一个节点: 对于源节点, 我们把距离(distance)字段设为0. 其他...
分类:
编程语言 时间:
2015-01-14 21:15:28
阅读次数:
282
题目大意:给出一个有向图,求这个图的路径长度平均值最小的环。
思路:二分这个答案,然后将所有边权都减去这个二分的值,对于所有节点进行DFS,这个过程中只沿着长度不断减少的方向搜,如果搜回了自己,说明可以降低界,否则提升下界。
不要用SPFA判负环,因为会T。
CODE:
#include
#include
#include
#include
#include
...
分类:
其他好文 时间:
2015-01-13 17:49:20
阅读次数:
225
Orziwtwiioi http://www.cnblogs.com/iwtwiioi/p/3887617.html并查集+前缀和 啊……这题应该是水题吧?但是我这个大沙茶居然一天都没想出来……判负环,最短路什么的都试过,都跪了…… “如果我们能够根据之前的信息推出来第r天应该比第l-1天多多少.....
分类:
其他好文 时间:
2015-01-11 12:14:51
阅读次数:
155
题目大意:裸的最优比例环
直接二分答案+SPFA 这样会T 因为数据卡SPFA
SPFA在负环非常小的时候会退化成Bellman-Ford 时间复杂度是O(nm) (好像是O(n*m^2)?我忘了)的
换一种方法 枚举每个点 从每个点开始DFS 只沿着能将指向的点dis减小的边搜索 搜到栈中的点就返回true
期望复杂度O(n^2) 最坏复杂度O(2^n) 这种东西能过我也是醉了- -
...
分类:
其他好文 时间:
2015-01-09 12:41:59
阅读次数:
219
今年的最后一篇了呢。。。好伤感的说,2014年还有1h就过去了不不不回到正题,这道题嘛~看上去好神啊!看到此题,我们可以联想到最优比例MST,于是就有了方法:首先二分答案ans,判断ans是否可行,那如何判断呢?每条边边权 - ans,之后在新的图中找负环即可。(可以用dfs版的spfa) 1 /....
分类:
其他好文 时间:
2014-12-31 23:58:29
阅读次数:
447
很容易看出0/1分数规划但是……好久没写我都忘了怎么做二分+spfa判负环啦01分数规划是这样的:有一堆物品,每个都有价值a[i],和代价b[i]。要使所有物品中取到的Σa[i]/Σb[i]取最值。设k为一个可能的取值,那么令d[i]=a[i]-k*b[i]。这题中a[i]就是第i条边的权,b[i]...
分类:
其他好文 时间:
2014-12-23 17:19:38
阅读次数:
221