摘要: 用zkw模板跑了一下,简直吓尿。。。我的spfa模板跑需要3s,zkw模板才要0.1s。。。。。。。。。。差距太大了。。zkw模板还没来得及学,所以将spfa的模板搬上来吧。。最小费用最大流,就是每次用最短路算法找出增广路,增广即可。spfa未优化版本:#include #include #incl... 阅读全文
posted @ 2014-07-05 22:04 iwtwiioi 阅读(419) 评论(0) 推荐(0) 编辑
摘要: 前几天就想写了的,一直没写,今天就写完吧。因为在做这些上下界的题的时候,遇到了很多问题,在大神的帮助下还是一一解决了的。(英文没学好诶喂,,在sgu和poj各种wa。。)主要是没看题,求上下界已经理解了的。。分3种上下界网络流问题:(在本文只说做法和一些相关的东西,证明和推导请看后面写出的参考)无源... 阅读全文
posted @ 2014-07-05 22:00 iwtwiioi 阅读(827) 评论(0) 推荐(0) 编辑
摘要: 在这里我只放我的模板和一些我个人的“理解”。。最大流测试题:usaco草地排水EK:时间复杂度:O(VE^2)代码复杂度:最易代码:#include #include #include using namespace std;#define CLR(a) memset(a, 0, sizeof(a)... 阅读全文
posted @ 2014-07-01 22:57 iwtwiioi 阅读(505) 评论(0) 推荐(0) 编辑
摘要: PS:本篇博文均采用宏#define FOR(i, a, n) for(i = a; i using namespace std;#define FOR(i, a, n) for(i = a; i 0) path[ans--] = pos; //先加入进去,因为没有记录最后的接入路径 while(... 阅读全文
posted @ 2014-02-16 19:35 iwtwiioi 阅读(707) 评论(0) 推荐(0) 编辑
摘要: 题目链接:https://vijos.org/p/1218算法:环形DP+划分型DP环形DP的思路很简单,将1~n中每一个节点当成起点进行划分型DP即可,关于划分型DP前面论文有介绍~查找tag把~sxbk!sxbk。。。此题那么水卡了我3个小时。。。变态。。。到头来发现是初始化。!!!!!!!但我... 阅读全文
posted @ 2014-02-16 00:21 iwtwiioi 阅读(536) 评论(0) 推荐(0) 编辑
摘要: 题目链接:https://vijos.org/p/1792算法:DP看到这题真的一点不会。。。只能爆搜一下。。但太太慢了。。看了题解后,听说是分组背包??不知道。。好吧,,还是百度了下题解,渐渐明了。。我们用f(i, j)来表示前i种花摆j盆的最大方案数,可以推得f(i, j) = sum{ f(i... 阅读全文
posted @ 2014-02-15 20:31 iwtwiioi 阅读(362) 评论(0) 推荐(0) 编辑
摘要: 题目链接:https://vijos.org/p/1431算法:贪心描述恶魔猎手尤迪安野心勃勃,他背叛了暗夜精灵,率领深藏在海底的娜迦族企图叛变。守望者在与尤迪安的交锋中遭遇了围杀,被困在一个荒芜的大岛上。为了杀死守望者,尤迪安开始对这个荒岛施咒,这座岛很快就会沉下去。到那时,岛上的所有人都会遇难。... 阅读全文
posted @ 2014-02-15 16:41 iwtwiioi 阅读(263) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://www.wikioi.com/problem/1029/算法:数学本题有个2小技巧。一棵二叉树的前序遍历a1a2a3...ai和后序遍历b1b2b3...bi有一种关系:当只有一棵子树的根 在a序列下标为i, 在b序列下标为b有 a[i-1] == b[j+1]这是因为当根只... 阅读全文
posted @ 2014-02-06 15:36 iwtwiioi 阅读(402) 评论(0) 推荐(0) 编辑
摘要: 关于背包DP的文章很多,谷歌百度搜《背包九讲》即可。本文章只放模版。文章统一v代表体积,w代表价值,f代表dp数组,V代表总体积,W代表总价值,均采用滚动数组。答案一般都为f[V]。01背包:void zop(int v, int w) { for(int i = V; i >= v; --i) ... 阅读全文
posted @ 2014-02-06 14:37 iwtwiioi 阅读(301) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://www.wikioi.com/problem/1296/算法:Splay这是非常经典的一道题目,用Splay树来维护营业额,每天的最小波动值就等于 min{树根-树根的前驱, 树根的后继-树根)所以用Splay来维护PS: 本题数据有问题,所以当空行时,值为0========... 阅读全文
posted @ 2014-02-04 16:54 iwtwiioi 阅读(418) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://www.wikioi.com/problem/1285/算法:Splay刚开始看到这题,就注意到特征abs了,并且数据n_using namespace std;#define F(rt) rt-> pa#define K(rt) rt-> key#define CH(rt,... 阅读全文
posted @ 2014-02-01 23:10 iwtwiioi 阅读(622) 评论(0) 推荐(0) 编辑
摘要: 废话不说,有篇论文可供参考:杨思雨:《伸展树的基本操作与应用》Splay的好处可以快速分裂和合并。===============================14.07.26更新=============================实在看不惯那充满bug的指针树了!动不动就re!动不动就re!... 阅读全文
posted @ 2014-02-01 18:55 iwtwiioi 阅读(734) 评论(0) 推荐(0) 编辑
摘要: 老旧的treap(无rank无select)#include #include #include using namespace std;#define NEW(d) new treap(d)struct treap { treap* ch[2]; int key, s; treap() : key... 阅读全文
posted @ 2014-01-31 20:53 iwtwiioi 阅读(384) 评论(0) 推荐(0) 编辑
摘要: 二叉查找树递归定义:二叉查找树是空树或不是空树二叉查找树的左二叉查找树的值一定小于二叉查找树的值或左二叉查找树为空树二叉查找树的右二叉查找树的值一定大于二叉查找树的值或右二叉查找树为空树不维护父亲域的,坑爹啊。放上代码:#include #include using namespace std;#d... 阅读全文
posted @ 2014-01-30 23:53 iwtwiioi 阅读(293) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://www.wikioi.com/problem/1282/算法:线段树(名次树)说明在代码里有了,直接上代码。#include using namespace std;#define lson l, m, rt > 1#define lc rt << 1#define rc r... 阅读全文
posted @ 2014-01-30 13:48 iwtwiioi 阅读(398) 评论(0) 推荐(0) 编辑
摘要: 题目链接http://www.wikioi.com/problem/1217/算法:二分答案(线段树可过wikioi数据)二分:http://www.wikioi.com/solution/list/1217/ (我不多阐述)不难看出这道题满足二分条件 所以我们对数据进行二分维护一个具有前缀和性质的... 阅读全文
posted @ 2014-01-29 12:03 iwtwiioi 阅读(326) 评论(0) 推荐(0) 编辑
摘要: 最近寒假,就来学习了一下线段树,其实挺简单的。通过一个树状数组来维护线段树,在区间求和和单点更新只需要维护个sum的树状即可,sum[1]表示1为根的区间[1, n]的和因为是树状数组,就不用记他的区间,用左孩子 rt/2 和右孩子 rt/2+1 。这里不详细介绍,想仔细学的这里有http://ww... 阅读全文
posted @ 2014-01-27 11:56 iwtwiioi 阅读(285) 评论(0) 推荐(0) 编辑
摘要: 归并排序又称合并排序,其核心是分治思想。分治法详细请看百度百科《算导》p20:分治法中的递归式是基于基本模式中的三个步骤的。如先前一样,设T(n)为一个规模为n的问题的运行时间。如果问题的规模足够地小,如n≤c(c为一个常量),则得到它的直接解的时间为常量,写作Θ(1)。假设我们把原问题分解成a个子... 阅读全文
posted @ 2014-01-16 20:24 iwtwiioi 阅读(910) 评论(0) 推荐(0) 编辑
摘要: 装了Xubuntu后,一直都挺好,只不过就是有一个问题老困扰我,就是每次开机打开thunar都是极慢的。。。。一直没注意,原来也一直找不到问题,后来今天一搜,唷呵。。。找到了。解决方法thunar 之所以首次启动会这么慢,是因为它在启动时会扫描网络。编辑文件 /usr/share/gvfs/mounts/network.mount,将AutoMount=true这一句改为AutoMount=false这样,thunar 在首次启动时就会很快了。同时可以看到,左边侧边栏中的 Network 会显示一个叉,不过只要点击一下,就会正常了。 阅读全文
posted @ 2014-01-03 01:44 iwtwiioi 阅读(328) 评论(0) 推荐(0) 编辑
摘要: 修正IBUS图标丢失gconftool –type boolean -s /desktop/ibus/panel/show_icon_on_systray truegconftool –type boolean -s /desktop/ibus/panel/show trueibus-daemon -drx 阅读全文
posted @ 2014-01-03 01:43 iwtwiioi 阅读(227) 评论(0) 推荐(0) 编辑