点击打开链接
题意:在一个王国有N个城市,M条路。选择N条路,构成一个环路。求出最小距离。
解析:构图,最小费用最大流。将源点和终点至个点花费记作0,然后将所有路径流量记作1或同一值。
#include
#include
#include
#include
using namespace std;
const int maxn = 10000;
const int maxm = 100...
分类:
其他好文 时间:
2014-07-21 22:47:37
阅读次数:
263
点击打开链接
题意:给你一张N个节点的无向图,然后给出M条边,给出第 I 条边到第J条边的距离。然后问你是否存在子环,如果存在,则输出最成环的最短距离和
解析:构图:选定源点及汇点,然后将源点至个点流量置为1,花费置为0.然后使用最小费用流,当返回值流量和,即flow
其余和tour一样求法,处理一下某两点距离为最短距离即可。
#include
#include
#include
#...
分类:
其他好文 时间:
2014-07-21 22:28:07
阅读次数:
251
给一个联通图,有的是单向边,有的是双向边,问是否存在欧拉回路。乍一看毫无思路,可以这样来搞,对于每条无向边,我们随便指定一个方向,看看是否能够做到所有点的度数之和为偶数。接下来,对于我们指定的边,假设指定的是U->V,那么我们也同时在网络中设置一条同样的边,使得流量为1,最后如果某点的出入度只差不为...
分类:
其他好文 时间:
2014-07-19 14:07:38
阅读次数:
232
寒城攻略:Listo 教你 25 天学会 Swift 语言 - 02 Swift Tour
开源中国,Swift 攻略...
分类:
其他好文 时间:
2014-07-16 13:18:49
阅读次数:
334
首先说下自己对Swift语言的一点点看法,对于一个写过javascript和常年写java代码的人来说,学习Swift是一件很简单的事情。就像某某人说过,每个人都有弱点和优点,我到目前为止,只是初步的认识这门语言,两个字扩散。或许,弱语言就是这样吧。一、基础知识1.基本类型 整型:Int 浮点型:F...
分类:
其他好文 时间:
2014-07-12 00:10:38
阅读次数:
311
典型的求最优比例环问题
参考资料:
http://blog.csdn.net/hhaile/article/details/8883652
此题中,给出每个点和每条边的权值,求一个环使 ans=∑点权/∑边权 最大。
因为题目要求一个环,而且必然是首尾相接的一个我们理解的纯粹的环,不可能是其他样子的环,
所以我们可以把一条边和指向的点看做整体处理。
上面方程可以化为:ans...
分类:
其他好文 时间:
2014-07-11 00:06:52
阅读次数:
321
最短路好题啊。
题目给定起点和终点,要求最短路和次短路(要求次短路只比最短路大1)的道路数量。
重点在于次短路如何处理是最高效的呢
这就要求对dij算法路径更新的理解了。
我们用一个数组记录最短路,一个数组记录次短路。
每次对当前最短边,先更新最短路,更新不了最短路再更新次短路。
每条边处理两次,这样就可以在2n×n的复杂度内求得最短路和次短路了。
#include
#inc...
分类:
其他好文 时间:
2014-07-10 20:34:48
阅读次数:
208
dijkstra求最短路和次短路的求法和计算 模板
dijkstra求最短路的变形。
外循环要循环2*n-1次,因为dis[n][2]有2*n个状态,而dis[s][0]已经用过一次。
算法:
1、如果比最短路短就更新最短路和次短路。
2、如果和最短路相等,更新最短路的计数。
3、如果和次短路相等,更新次短路的方法数。
4、如果比次短路短,更新次短路。
#...
分类:
其他好文 时间:
2014-07-09 12:41:26
阅读次数:
205
首先算出mp[i][j]:
以i为最高点,i到j的最短距离是多少。
然后对于每次询问,枚举最高点。
结果就为min(mp[i][st]+mp[i][ed]+val[i]);
但是这个题我用SFL优化了一下。。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
...
分类:
其他好文 时间:
2014-07-08 16:59:36
阅读次数:
204