BFS
ToheartZhang
这个作者很懒,什么都没留下…
展开
-
【分数规划总结】周测图论1 环 & CODEVS 1183 泥泞的道路
(s1+s2+…+sn)/(t1+t2+…+tn) = ans 即s1-t1*ans+s2-t2*ans+…+sn-tn*ans = 0 当需求比值解时考虑分数规划,二分答案求解。根据题目要求向上二分或向下二分,利用spfa判正/负环。 环 定义环的伸展度为这个环上所有边的距离之和与环上边的总数的比值,给出一个n个节点,m条边的有向图,每条边有一个属性距离,求图中伸展度最小的有原创 2017-05-24 14:09:36 · 316 阅读 · 0 评论 -
POJ 1849 Two
求树的直径要先bfs找到任意起点能走到的最远的点,然后再以找到的点为起点bfs。 本题要求两点遍历树,实际是求两倍权和-树的直径,证明不缀。//注意拓展点的循环的条件是i != -1还是i != 0. #include<cstdio> #include<queue> #include<cstring> #include<iostream> using namespace std; const i原创 2017-06-14 11:16:31 · 351 阅读 · 0 评论 -
NOIP2013 Day2 T3 华容道
//拍60分暴力当练手了,千万别把已经输入的数据初始化了!!! #include<cstdio> #include<queue> #include<cstring> #include<iostream> using namespace std; const int xx[] = {0, 0, 1, -1}; const int yy[] = {1, -1, 0, 0}; int n, m, q;原创 2017-07-19 21:26:13 · 306 阅读 · 0 评论 -
洛谷 1073 最优贸易
//反BFS找能到终点的点,正BFS找到此点及以前最小代价。正BFS实际上是SPFA,要熟练掌握重复更新的思想。 #include<bits/stdc++.h> using namespace std; const int maxn = 100010; const int maxm = 500010; int n, m, tot, tot1, ans; int st[maxn], rst[maxn]原创 2017-08-16 16:32:29 · 279 阅读 · 0 评论