
SPFA的高级应用
空灰冰魂
=NULL
展开
-
【BZOJ3875】【Ahoi2014】骑士游戏 SPFA处理有后效性动规
题解: 首先一个点可以分裂成多个新点,这样就有了图上动规的基础。 即f[i]表示i点被消灭的最小代价,它可以由分裂出的点们更新。 但是这个东西有后效性,所以我们用SPFA来处理它。 spfa处理后效性动规 我们每更新一个点A的动规值,就会有若干个点的动规值可能被更新。 即可以分裂出点A的那些点。 于是A出队后一旦动规值被更新了,就把那些点入队。 初始时要把所有点入队,因为它们都可能原创 2015-03-03 17:26:03 · 2634 阅读 · 0 评论 -
【BZOJ1880】【Sdoi2009】Elaxia的路线 spfa+拓扑图求最长链
题意: 无向连通图上,S→TS→T有若干条最短路,s→ts→t也有若干条最短路,搞出来两条最短路,要求重合的尽量长(可以方向不同)。 题解: spfa处理出这四个点到每个点的最短路,然后枚举求哪些边既在S→TS→T某条最短路里,又在s−→ts-→t的某条最短路里,然后这是个拓扑图,跑最长链。 哎呀没什么可说的么,水题贴代码就好啦。 代码: #include #include #原创 2015-03-22 14:10:50 · 1788 阅读 · 0 评论