- 博客(5)
- 收藏
- 关注
原创 网络流-最大流&最小费用最大流
isap递归版 最大流#include<cstdio>#include<algorithm>#include<cstring>#include<cmath>using namespace std;int isap(int x,int flow){ if(x==t) return flow; int res=flow; for(int i=1;i<=n;i++)if
2016-12-28 21:03:26 378 2
原创 逆元 递推求逆元
其实有些题需要用到1-p模p的所有逆元,这里p为奇质数。那么如果用快速幂求时间复杂度为O(p log(p)), 如果对于一个1000000级别的素数,这样做的时间复杂度是很高了。实际上有的算法,有一个递推式如下inv[i]=(M-M/i)*inv[M%i]%M (其中M为模数,要求为奇质数)它的推导过程如下:设t=M/i,k=M%i,那么 t*i+k≡0(Mod M) -t*i≡
2016-12-25 11:35:55 4582 1
原创 线段树 [AHOI2011维护序列]
题意:对一串序列有如下操作。 1.将某个区间的每个数都加上某个数 2.将某个区间的每个数乘上某个数 3.询问区间和 做法:线段树,维护时记录三个数组,一起下传。#include<cstdio>#include<algorithm>#include<cstring>#include<cmath>using namespace std;typedef long
2016-12-24 17:25:43 394 1
原创 Splay [ZJOI2012网络]
题意:一个网络支持一下操作:修改一个节点的权值。修改一条边的颜色。查询由颜色c的边构成的图中,所有可能在节点u到节点v之间的简单路径上的节点的权值的最大值。做法:对于每一种颜色,用一棵Splay维护最大值即可。注意:rotate请不要打错(grandfa的儿子要另外判断左右)。#include<cstdio>#include<algorithm>#include<cstring>#in
2016-12-22 21:20:22 404
原创 [ZJOI2008]骑士
做法:类似树形DP,但细节较多。 注意点:1.树形DP回溯时dp[u][1]+=dp[v][0],而不是取最小值; 2.dfs的时候要全部搜到,不能一搜到重复的点就直接return了。#include<cstdio>#include<algorithm>#include<cstring>#include<cmath>#include<vector>using
2016-12-20 22:56:35 419
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人