自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

hjx

  • 博客(12)
  • 收藏
  • 关注

原创 P2472 [SCOI2007]蜥蜴

https://www.luogu.org/problem/show?pid=2472这是一道网络流题,主要是构建图(建模),然后用最大流就可以了; 虚构一个汇点和一个源点 构图时,把每个柱子拆成一条边连接两个点,边的容量为柱子高度; 把可以跳出的柱子连到汇点,容量是INF(不影响结果); 把源点和有蜥蜴的柱子连一条容量唯一的点,那每只蜥蜴开始跳的时候就相当于从汇点跳来,消耗单位 1 的流量

2017-04-28 16:55:09 208

原创 最小割即为最大流

http://blog.csdn.net/xzz_hust/article/details/22041173 首先给出割的定义:在图G(V,E)中,将图割成两个不能联通的图的边集即为割;有这样一种题目:求G(V,E)中s点到t点的最小割,这个问题就是求s–>t的最大流, 下面给出解释: 最大流通过的路径中,值最小的是流量的值,当求出s–>t的最大流时,就不存在增广路了,就把s和t分到两个集合中

2017-04-23 10:23:27 222

原创 P1341 地震逃生

https://www.luogu.org/problem/show?pid=1343#sub最大流#include<iostream>#include<cstdio>#include<cstring>#include<string>#include<algorithm>#include<vector>#include<queue>#define INF 100000000using

2017-04-23 09:06:31 352

原创 P3376 【模板】网络最大流

首先感谢(http://blog.csdn.net/x_y_q_/article/details/51999466)http://blog.csdn.net/x_y_q_/article/details/51999466一、首先是FF算法,dfs找增广路, 奉上最简模板(邻接矩阵)#include<iostream>#include<cstdio>#include<cstring>#incl

2017-04-23 08:47:35 1104

原创 【模板】AC自动机

我觉得AC自动机的难点和核心是构建失败指针,父亲的失败指针的儿子(son2)中有和儿子(son1)相同的,即为son1的失败指针 例 #include<iostream>#include<cstdio>#include<cstring>#include<string>#include<algorithm>#include<vector>#include<cmath>#include

2017-04-16 11:18:29 229

原创 二分图最大匹配

#include<iostream>#include<cstring>#include<cstdio>#include<string>#include<algorithm>#include<queue>#include<vector>using namespace std;int n,m;int num[20009],nxt[20009],head[10009],cnt=0,sum

2017-04-16 08:20:16 291

原创 割边

#include<iostream>#include<cstring>#include<cstdio>#include<string>#include<algorithm>#include<queue>#include<vector>using namespace std;int num[200009],dfn[100009],nxt[200009],low[100009],head

2017-04-16 08:18:44 458

原创 KMP

#include<iostream>#include<cstdio>#include<cstring>#include<string>#include<vector>#include<algorithm>using namespace std;int nxt[10009],l1,l2;char s1[100009],s2[10009];void next_make()//求nxt数

2017-04-16 08:13:38 486

原创 P1160 队列安排(链表)

https://www.luogu.org/problem/show?pid=1160#sub 模拟,链表实现即可#include<iostream>#include<cstdio>#include<algorithm>#include<cstring>#include<string>#include<vector>using namespace std;bool f[100009]

2017-04-09 11:11:12 573

原创 P1113 杂务

问题的特殊性:John有需要完成的n个杂务的清单,并且这份清单是有一定顺序的,杂务k(k>1)的准备工作只可能在杂务1..k-1中。 即当前任务的杂务都是前面已经完成的,那么就可以在子杂务里找一个时间最长的,加上当前任务的时间,即完成当前任务的时间最后在所有任务里找时间最长的即为答案#include<iostream>#include<cstring>#include<cstdio>#inc

2017-04-09 10:33:41 694

原创 P1119 灾后重建(离线Floyed)

https://www.luogu.org/problem/show?pid=1119#sub 弗洛伊德其实是一个三维的dp 以k为中间点时,f[k][i][j]=min(f[k][i][j],f[k-1][i][j]); 这个题询问的时间是有顺序的,所以可以改为两维, floyd算法中枚举的k是中转点,在这道题中就可以按时间顺序把点当作中转点,挨个儿加入图中,并且同时将‘时间恰当的询问’求

2017-04-09 10:21:56 345

原创 P1198 [JSOI2008]最大数

https://www.luogu.org/problem/show?pid=1198#sub因为询问的是末尾L个数中的最大数。由于L不固定,所以用单调栈而不是单调队列。于是需要维护一个单调递减栈。插入操作和单调队列一样,当当前数大于栈顶时栈顶出栈,然后当前数进栈。由于栈底不能像队首一样被弹出(不存在“过期元素”),查询操作不可能做到O(1)了。显然20W的规模不可能用O(n)的算法进行单次操作。考

2017-04-08 16:30:47 319

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除