【算法】SPFA
文章平均质量分 87
cz_xuyixuan
这个作者很懒,什么都没留下…
展开
-
【BZOJ1486】【HNOI2009】最小圈
【题目链接】点击打开链接【思路要点】先二分答案,然后判断图中是否存在负环。时间复杂度可近似认为为\(O(MLogW)\)。【代码】#include<bits/stdc++.h> using namespace std; const int MAXN = 5005; const double INF = 1e12; const double eps = 1e-12; template &...原创 2018-04-03 18:46:01 · 230 阅读 · 0 评论 -
【BZOJ4898】【APIO2017】商旅
【题目链接】点击打开链接【思路要点】明显的分数规划,第一步先二分答案\(Ans\)。接下来,有一种显然的想法是拆点,把在每一个点时,持有某个物品的状态拆成\(K\)个点,然后,问题转化为了图中是否存在非负环。但这个做法复杂度是\(O((N+M)KLogS)\)的,(应该)无法通过。进一步考虑,实际上,我们并不需要记录当前持有什么物品,如果一次买卖的买入市场和卖出市场都已经确定,那么这次买卖的最大获...原创 2018-04-03 20:48:24 · 329 阅读 · 0 评论 -
【BZOJ2595】【WC2008】游览计划
【题目链接】点击打开链接【思路要点】可以直接用基于连通性的的动态规划求解,或者可以用斯坦纳树DP+SPFA求解。时间复杂度\(O(N*M*3^K)\)。【代码】#include<bits/stdc++.h> using namespace std; #define MAXN 15 #define MAXQ 2000005 #define CURR 1024 #define INF 1e...原创 2018-04-17 20:12:13 · 278 阅读 · 0 评论 -
【BZOJ4774】修路
【题目链接】点击打开链接【思路要点】补档博客,无题解。【代码】#include<bits/stdc++.h> using namespace std; #define MAXQ 1000005 #define MAXN 10005 #define CURR 256 #define INF 1e9 struct edge {int dest, len; }; vector <edg...原创 2018-04-17 20:51:32 · 410 阅读 · 0 评论 -
【BZOJ4006】【JLOI2015】管道连接
【题目链接】点击打开链接【思路要点】补档博客,无题解。【代码】#include<bits/stdc++.h> using namespace std; #define MAXQ 1000005 #define MAXN 1005 #define CURR 1024 #define INF 1e9 struct edge {int dest, len; }; vector <edg...原创 2018-04-18 14:44:20 · 214 阅读 · 0 评论 -
【BZOJ3205】【UOJ107】【APIO2013】机器人
【题目链接】BZOJUOJ【思路要点】补档博客,无题解。【代码】#include<bits/stdc++.h> using namespace std; #define MAXN 505 #define MAXC 10 #define MAXV 1000005 #define MAXQ 300005 #define INF 1e9 //0 - up; 1 - right; 2 - do...原创 2018-04-18 16:09:03 · 1318 阅读 · 0 评论