- 博客(5)
- 收藏
- 关注
原创 回文自动机学习笔记(配图)
回文树(EER Tree,Palindromic Tree,也被称为回文自动机)是一种可以存储一个串中所有回文子串的高效数据结构。使用回文树可以简单高效地解决一系列涉及回文串的问题。
2025-07-13 20:03:16
565
原创 可持久化线段树学习笔记
但实际上这其实无关紧要,因为根不一样,所以根的子树可以代表一个版本。所以每次做链上的修改的时候,只需要把链上的点复制一份,再根据回溯过来的结果指定左右儿子即可。其实我们发现,历史版本对现在版本的印象仅限于两点的 LCA 到根的那一条链。在上图中,绿色点是黑色点的修改版本,橙色点是绿色点的修改版本,但是修改的节点。总结一下,就是动态开点,但是根有版本之间的区分。的链(红色部分)就会被插入到原来的线段树。),那么从根到对应点的一条长为。的点(在线段树中对应编号为。现在考虑怎么在历史版本上修改。
2025-07-09 07:30:26
155
原创 换根 dp 学习笔记
最初所有的顶点都是白色的。在游戏的第一个回合中,你选择一个顶点并将其涂成黑色。然后在每个回合中,你选择一个与任何黑色顶点相邻的白色顶点。个点的树,请求出一个结点,使得以这个结点为根时,所有结点的深度之和最大。容易发现,假如根为定,那么染色所获得的代价就是子树的大小,如上即可。的代价将根移动到相邻的节点。为根的时候,深度之和的最大值。前提知识,树的直径的性质:令树的直径两端为。所以这题可以先求出来树的直径,然后枚举。到树的其他节点的最长距离,要么是。你的任务是使你获得的点数最大化。所在的白色连通块大小。
2025-07-07 21:55:06
798
原创 FFT 学习笔记
本文介绍了快速傅里叶变换(FFT)算法,用于高效计算多项式乘法。FFT的核心思想是将多项式从系数表示转换为点值表示,通过单位根的性质分治计算,再通过逆变换恢复结果。文章详细讲解了单位根的定义和性质,以及FFT的递归实现过程,包括系数拆分、分治处理和结果合并。最后给出了C++代码实现,展示了如何将两个多项式从系数表示转换为点值表示,相乘后再转换回系数表示。该算法的时间复杂度为O(nlogn),是多项式乘法的高效解决方案。
2025-07-07 19:43:38
461
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人