![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
模板
lj_acm
这个作者很懒,什么都没留下…
展开
-
强连通分量模板
#include #include #include #include #include #include原创 2013-08-20 21:48:12 · 735 阅读 · 0 评论 -
点双联通和二分图着色(二分图判定)模板
void dfs(int u,int fa) { pre[u]=low[u]=++dfs_clock;//不想改了,ow不用定义成数组,直接定义一个变量 lowu就行了 int i,j; node tem; for(i=1;i<=n;i++) // {原创 2013-08-20 21:12:55 · 846 阅读 · 0 评论 -
2-SAT模板
int dfs(int u) { if(mark[u]) return 1; if(mark[u^1]) return 0; mark[u]=1; S[top++]=u; int i,v; for(i=head[u];i!=-1;i=e[i].next) { v=e[i].v; if(!dfs(v)) return 0; } return 1;原创 2013-08-20 21:51:43 · 799 阅读 · 0 评论 -
KM算法模板
int S[maxn],T[maxn];int g[maxn][maxn];int lv[maxn],rv[maxn],leftp[maxn];int slack;int n,m;int match(int u){ S[u]=1; int i; for(i=1;i<=n;i++) { if(lv[u]+rv[i]==g[u][i])原创 2013-08-19 08:51:13 · 819 阅读 · 0 评论 -
后缀数组模板
/* suffix array 倍增算法 O(n*lgn) build_sa( ,n+1, ) 注意n+1 getHeight( , n) n = 8 ; num[] = { 1, 1, 2, 1, 1, 1, 1, 2, $ }. 注意num数组最后一位值为0,其它位须大于0! rank[] = { 4, 6, 8, 1,转载 2013-10-11 15:10:44 · 656 阅读 · 0 评论