2026年2月6日

可持久化(普通)平衡树

摘要: #include<iostream> #include<random> using namespace std; const int N=5e5+5,INF=0x7fffffff; mt19937 Rand(time(0)); struct node{ node *l,*r; int val,siz 阅读全文

posted @ 2026-02-06 19:28 _CENSORED 阅读(0) 评论(0) 推荐(0)

2026年2月5日

可持久化文艺平衡树

摘要: (调了我一整个上午,害得我写不了带返回\(split\),罪大恶极) 首先,什么是\(FHQ\)_\(treap\),什么是可持久化,就不用多说了,本文旨在替本人保存代码,本文旨在总结打代码时的坑点。 通常来说,可持久化的主要体现——克隆,主要发生在插入、删除、修改等时,但是,由于\(FHQ\)_\ 阅读全文

posted @ 2026-02-05 15:39 _CENSORED 阅读(2) 评论(0) 推荐(0)

2026年2月3日

单回路问题

摘要: /* 大体懂了,可j,j+1,j',(j+1)'的关系没弄懂 */ #include <iostream> #include <cstring> using namespace std; using ll=long long; int n,m,ex,ey,st[2][300010],tot[2],p 阅读全文

posted @ 2026-02-03 14:39 _CENSORED 阅读(4) 评论(0) 推荐(0)

2026年2月2日

多回路问题

摘要: /* //多回路问题,升级版为单回路(因为要考虑连通分量的合并),可以看做例题 #include<iostream> #include<cstring> using namespace std; using LL=long long; int n,m; LL dp[2][1<<13]; int ma 阅读全文

posted @ 2026-02-02 21:29 _CENSORED 阅读(2) 评论(0) 推荐(0)

洛谷P10975 Mondriaan's Dream

摘要: DP数组第二维是“轮廓线”的状态,即已知状态和未知状态的分界线 因为很显然,我们不关心已知状态和未知状态具体的方案如第1行第4列的方案数是多少,我们只关心“交界处”即“轮廓线”的方案,所以只需要保存轮廓线的状态即可 其中cur是上一个即已知的状态,nex即下一个未知的状态(当前为轮廓线) 注意,在状 阅读全文

posted @ 2026-02-02 11:18 _CENSORED 阅读(5) 评论(0) 推荐(0)

2026年1月8日

可持久化平衡树

摘要: /* #include<iostream> #include<random> using namespace std; const int INF=2147483647; mt19937 Rand(time(nullptr)); struct node{ node *l,*r; int val,si 阅读全文

posted @ 2026-01-08 16:38 _CENSORED 阅读(26) 评论(0) 推荐(0)

2026年1月6日

可持久化线段树(未完成)

摘要: //#include<iostream> //#include<algorithm> // //using namespace std; // //const int N=2e5+5; //struct node{ // int l,r,cnt; //}; //node tree[N<<5]; // 阅读全文

posted @ 2026-01-06 21:03 _CENSORED 阅读(15) 评论(0) 推荐(0)

可持久化Trie

摘要: /* 题目要求查询区间[l,r]异或和与一个值val的最大异或和 由a1a2...^an ^ a1a2...an=0与a0=a的性质 可以转化为pre[l-1]pre[r]valpre[n],其中valpre[n]是定值,只需要求出pre[l-1]^pre[r]的最大值 显然,如果一个一个求,效率极 阅读全文

posted @ 2026-01-06 21:02 _CENSORED 阅读(24) 评论(0) 推荐(0)

2026年1月3日

后缀数组及其应用LCP(the Longest Common Prefix,最长公共前缀)

摘要: 一、前言 后缀数组,\(suffix\) \(array\),缩写\(sa\),在处理字符串问题中用处很多 二、定义 对于一个字符串S,从其第i位字符开始至最后一位所构成的子串,记作后缀\(suffix(i)\),如对于字符串"\(aabaaaab\)",: 有 suffix(1)="aabaaaa 阅读全文

posted @ 2026-01-03 17:31 _CENSORED 阅读(29) 评论(0) 推荐(0)

2025年10月30日

AC自动机(拓扑排序优化)

摘要: /* 本质:Trie的基础上+KMP的思想(失配指针) 匹配过程中,为了防止失败就前功尽弃,不能利用之前匹配结果的情况,就发明了KMP 如果将KMP运用到高效的Trie上,就可以实现多模式串的匹配 每次匹配失败,就去查找具有最长相同前缀的链 例如,对于abchi和chj这两条链,当我们遍历至i,我们 阅读全文

posted @ 2025-10-30 19:13 _CENSORED 阅读(45) 评论(0) 推荐(0)

导航