摘要: posted on 2021-09-20 00:05:18 | under 灌水 | source 如果你记了答案可以测一下(误) S #include <cctype> #include <string> #include <cstring> #include <iostream> #includ 阅读全文
posted @ 2022-11-06 20:06 caijianhong 阅读(31) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2022-11-06 19:43 caijianhong 阅读(45) 评论(0) 推荐(0)
摘要: posted on 2021-09-19 22:34:52 | under 题解 | source 人在佛山,考场在南外。 学校信息队太强了,不仅租车还包午饭,点赞。 来写一下我做题经历吧: S 组 官方答案: ABACCCCBDACCCB TFFTDC TFFBCB FTFBDD DADCADAD 阅读全文
posted @ 2022-11-06 19:37 caijianhong 阅读(70) 评论(0) 推荐(0)
摘要: posted on 2021-09-16 12:53:27 | under CSPRP++ | source RP++ 主定理 \(T(n)=aT(\frac{n}{b})+f(n)\) 如果 \(n^{\log_b a}<f(n)\) 则复杂度是 \(O(f(n))\) 如果 \(n^{\log_ 阅读全文
posted @ 2022-11-06 19:35 caijianhong 阅读(40) 评论(0) 推荐(0)
摘要: posted on 2022-07-26 15:03:06 | under 学术 | source 太难所以要写,我太菜了。 斜率优化 problem 形如 \[f_i=\min/\max\limits_{1\leq j<i}\{{f_j-a_i\cdot c_j}\}+d_i \]的式子可以被斜率 阅读全文
posted @ 2022-11-06 19:33 caijianhong 阅读(81) 评论(0) 推荐(0)
摘要: posted on 2022-05-28 12:02:29 | under 题解 | source 感谢 vjudge.net 提供技术支持。 https://vjudge.net/contest/497115#overview CF771A Bear and Friendship Conditio 阅读全文
posted @ 2022-11-06 19:27 caijianhong 阅读(71) 评论(0) 推荐(0)
摘要: posted on 2022-08-12 14:14:05 | under 模板 | source 感谢讲师 LQS 带来的网络流专题。 本文非常不严谨,请不要把它当作入门博客。 codes 最大流:Dinic 实现(version 1) typedef long long LL; template 阅读全文
posted @ 2022-11-06 19:23 caijianhong 阅读(88) 评论(0) 推荐(0)
摘要: posted on 2022-10-15 16:45:09 | under 题解 | source 什么是李超线段树? 李超线段树是一种可以插入直线,单点查询 $\min/\max$ 的线段树,用了标记永久化的技巧。 修改时一路走下去,最多递归一边,啥都不用管。 李超线段树除了全局插入直线,单点询问 阅读全文
posted @ 2022-11-06 19:17 caijianhong 阅读(148) 评论(3) 推荐(2)
摘要: posted on 2021-11-16 12:50:02 | under 模板 | source ~~英语不好啊,就叫 treecut 吧,不管了~~ treecut 速成(确信): 重儿子:所有儿子节点中 siz 最大的。重链:以轻儿子(钦定 root 为轻儿子)开始一直往重儿子走的一条链。 d 阅读全文
posted @ 2022-11-06 19:17 caijianhong 阅读(43) 评论(0) 推荐(0)
摘要: posted on 2021-08-27 19:17:02 | under 模板 | source 万恶之源:初赛完善程序 一些定义: #include <cstring> #include <algorithm> using namespace std; const int maxn=1e5,ma 阅读全文
posted @ 2022-11-06 19:17 caijianhong 阅读(33) 评论(0) 推荐(0)
摘要: posted on 2022-07-22 15:16:41 | under 模板 | source 离散花 template<int N> struct flower{ int b[N+10],cnt; flower():cnt(0){} void operator+=(int x){b[++cnt 阅读全文
posted @ 2022-11-06 19:17 caijianhong 阅读(50) 评论(0) 推荐(0)
摘要: posted on 2022-11-02 18:51:48 | under 模板 | source link -> https://www.cnblogs.com/caijianhong/p/template-suffixam.html 重要结论:反串上跳 fail 等价于正串上跳 next。 点击 阅读全文
posted @ 2022-11-06 19:17 caijianhong 阅读(81) 评论(0) 推荐(0)
摘要: posted on 2021-09-04 20:03:43 | under 模板 | source 点击查看代码 template <int N, int M, class T> struct graph { int head[N + 10], nxt[M << 1], cnt; struct ed 阅读全文
posted @ 2022-11-06 19:17 caijianhong 阅读(55) 评论(0) 推荐(0)
摘要: posted on 2022-07-21 14:10:58 | under 模板 | source typedef long long LL; template<int N> struct fhqtreap{ int val[N+10],pri[N+10],siz[N+10],x,y,z,root; 阅读全文
posted @ 2022-11-06 19:17 caijianhong 阅读(50) 评论(0) 推荐(0)
摘要: posted on 2022-09-17 15:59:26 | under 模板 | source code LL mod(LL x,LL m){return(x%m+m)%m;} LL exgcd(LL a,LL b,LL c,LL& x,LL& y){ if(!b) return x=c/a,y 阅读全文
posted @ 2022-11-06 19:17 caijianhong 阅读(151) 评论(0) 推荐(0)
摘要: posted on 2021-08-17 09:15:04 | under 模板 | source 可清空 template<int N> struct fenwick{ int t[N + 10]; fenwick() { memset(t, 0, sizeof t); } void add(in 阅读全文
posted @ 2022-11-06 19:17 caijianhong 阅读(104) 评论(0) 推荐(0)
摘要: posted on 2022-08-07 17:04:40 | under 模板 | source 目录后缀数组code证明 \(rnk_{sa_i+j}\) 只会越界到 \(n+1\)证明解决方法构造数据求两个后缀的 LCP求 \(S[l,r]\) 在原串的出现次数本质不同的子串个数(位置不同算相 阅读全文
posted @ 2022-11-06 19:17 caijianhong 阅读(104) 评论(0) 推荐(0)
摘要: posted on 2022-08-07 20:50:14 | under 模板 | source updated on 20230727:增补更多细节,合并广义 SAM 相关。 点击查看闲话 广义后缀自动机,建议看这篇理解会更深(口语化警告) <- 已经加入后缀自动机豪华套餐 保存:基本子串结构 阅读全文
posted @ 2022-11-06 19:17 caijianhong 阅读(335) 评论(0) 推荐(0)
摘要: posted on 2022-01-25 18:52:13 | under 模板 | source typedef long long LL; const int P = 998244353; template <int N, int M, class T = LL> struct matrix { 阅读全文
posted @ 2022-11-06 19:17 caijianhong 阅读(42) 评论(0) 推荐(0)
摘要: posted on 2022-10-23 13:50:24 | under 模板 | source problem 给定一个二维平面,多次询问 $x\in[l_x,r_x],y\in[l_y,r_y]$ 的点有多少个。 solution 1(静态+在线):可持久化线段树 将 $x\in[1,l]$ 阅读全文
posted @ 2022-11-06 19:16 caijianhong 阅读(150) 评论(0) 推荐(0)
摘要: posted on 2021-11-27 22:37:04 | under 模板 | source sto crxis 注:不是 tarjan void crxis(int u){ for(int i=g.head[u];i;i=g.nxt[i]){ int v=g[i].v; if(dep[v]= 阅读全文
posted @ 2022-11-06 19:16 caijianhong 阅读(61) 评论(0) 推荐(0)
摘要: posted on 2022-07-20 18:59:16 | under 模板 | source 0x00 模板(P3806) 给定 $n,k$ 和一棵树,计算 $$\sum\limits_{i,j\leq n}[{\tt dist}(i,j)=k]$$ 即树上距离为 $k$ 的点对数量。 点分治 阅读全文
posted @ 2022-11-06 19:12 caijianhong 阅读(70) 评论(0) 推荐(0)
摘要: posted on 2021-09-12 15:49:52 | under 模板 | source 感觉不如直接复制 template <int N> struct dsu { int fa[N + 10], siz[N + 10], cnt; explicit dsu(int n = N) : c 阅读全文
posted @ 2022-11-06 19:12 caijianhong 阅读(188) 评论(0) 推荐(0)
摘要: posted on 2022-07-22 19:15:58 | under 模板 | source template<int N,class T=int,int logN=20> struct STable{ int tot,lg[N+10];T f[logN+1][N+10]; STable(): 阅读全文
posted @ 2022-11-06 19:12 caijianhong 阅读(50) 评论(0) 推荐(0)
摘要: posted on 2022-10-18 13:30:17 | under 模板 | source const char* name="bit"; #include <cstdio> #include <cstring> #include <algorithm> using namespace st 阅读全文
posted @ 2022-11-06 19:11 caijianhong 阅读(29) 评论(0) 推荐(0)
摘要: posted on 2022-08-17 18:05:59 | under 模板 | source template<int N> struct lctree{ int val[N+10],sum[N+10],fa[N+10],ch[N+10][2],rev[N+10]; bool getson(i 阅读全文
posted @ 2022-11-06 19:11 caijianhong 阅读(31) 评论(0) 推荐(0)
摘要: posted on 2022-07-21 17:03:54 | under 模板 | source (介绍等会补) 调试: getpre、getsuf、find 手写,常数不要乘以二。 UB:getkth 和 getrnk 叠起来的时候 root 会改! UB:getpre、getsuf 的 val 阅读全文
posted @ 2022-11-06 19:11 caijianhong 阅读(36) 评论(0) 推荐(0)
摘要: posted on 2022-02-04 18:11:33 | under 模板 | source int popcount(int x){ #define BIT2(n) n,n+1,n+1,n+2 #define BIT4(n) BIT2(n),BIT2(n+1),BIT2(n+1),BIT2( 阅读全文
posted @ 2022-11-06 19:11 caijianhong 阅读(112) 评论(0) 推荐(0)
摘要: posted on 2022-08-10 18:07:25 | under 模板 | source 0x00 Bellman-Ford 最短路经过的边数不超过 $n-1$,因此若松弛轮数达到 $n$ 轮即有负环。复杂度 $O(nm)$。 int dis[100010]; bool vis[10001 阅读全文
posted @ 2022-11-06 19:11 caijianhong 阅读(52) 评论(0) 推荐(0)
摘要: posted on 2022-06-11 11:17:10 | under 模板 | source template<int N,int M=26,int D='a'> struct acam{ int ch[N+10][M],cnt[N+10],tot,fail[N+10]; int sum[N+ 阅读全文
posted @ 2022-11-06 19:11 caijianhong 阅读(27) 评论(0) 推荐(0)
摘要: posted on 2022-01-17 16:13:39 | under 模板 | source #include <cstdio> #include <cstring> #include <algorithm> using namespace std; template<int N,int M= 阅读全文
posted @ 2022-11-06 19:11 caijianhong 阅读(34) 评论(0) 推荐(0)
摘要: 你好,博客园!——2022.11.6 阅读全文
posted @ 2022-11-06 18:28 caijianhong 阅读(463) 评论(0) 推荐(1)