摘要: struct CutvertexBridge { static const int MAXN = 2e5 + 10; static const int MAXM = 2e6 + 10; int n, m, t; struct Edge { int v, nxt; } e[MAXM * 2]; int 阅读全文
posted @ 2021-01-24 20:47 purinliang 阅读(125) 评论(0) 推荐(0) 编辑
摘要: struct Splay { static const int MAXN = 3e6 + 10; int top, root, ch[MAXN][2], pa[MAXN]; int val[MAXN], cnt[MAXN], siz[MAXN]; void _PushUp(int x) { siz[ 阅读全文
posted @ 2021-01-24 18:06 purinliang 阅读(59) 评论(0) 推荐(0) 编辑
摘要: Lyndon串:当且仅当字符串 \(s\) 的字典序严格小于其所有后缀的字典序时,字符串 \(s\) 是Lyndon串。当且仅当字符串 \(s\) 的字典序严格小于其所有非平凡循环同构串的字典序时,字符串 \(s\) 是Lyndon串。 Lyndon分解:字符串 \(s\) 的Lyndon分解为 \ 阅读全文
posted @ 2021-01-24 16:34 purinliang 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 无源汇上下界可行流 所有点都要满足流量平衡的可行流。每条边的流量上界为 \(F\) ,流量下界为 \(f\) ,一开始加入初始流量,对于每个点 \(i\) ,设超级源 \(S\) 和超级汇 \(T\) ,设初始入流量-初始出流量为 \(M\) , 若M=0就不用管,若M>0(入流量过大),则连接 \ 阅读全文
posted @ 2021-01-24 12:12 purinliang 阅读(100) 评论(0) 推荐(0) 编辑