摘要: (之前学的一些东西都没打笔记,给忘的差不多了。从这个开始要记得写笔记了。) 注意事项:所有的字符串的下标从1开始。 KMP 对于一个字符串 s ,定义它的前缀数组a,其中a[i]表示子串s[1...i]前缀与后缀相同的最大长度(不包括串自身)。 对于朴素的算法,自然是n^2的暴力。考虑利用前面位置的 阅读全文
posted @ 2024-08-10 11:32 Cyan_wind 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 2-SAT 用于求解布尔方程组,其中每个方程最多含有两个变量,方程的形式为 (ab)=1 ,即式子 a 为真或式子 b 为真。求解的方法是根据逻辑关系式建图,然后求强联通子图,每一个强联通子图的答案都是一样的。 建图: 这里以模版题为例: 题意:给定若干个需要满足的条件,其 阅读全文
posted @ 2024-08-10 11:25 Cyan_wind 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 闵可夫斯基和 定义两个凸包 A,B 的闵可夫斯基和 C={a+baA,bB} 。就是从原点向其中一个凸包连出的向量,平移到另一个凸包上的每一个点,最后构成的图形即为两个凸包的闵可夫斯基和。其中的第一个图形可以看做被缩到了原点,C 中右下角(这里是 阅读全文
posted @ 2024-08-02 09:02 Cyan_wind 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 李超线段树 学习笔记 问题引入: 在一个平面内,有 n 次操作,这些操作分为 2 种:第一种是在平面内加入一条线段;第二种是给定一个 k ,查询直线 x=k 与这些线段交点的最大值。(强制在线, \(n\le10^5,1\le x\le 39989,-10^9\le 阅读全文
posted @ 2024-07-05 21:27 Cyan_wind 阅读(12) 评论(0) 推荐(0) 编辑
摘要: Manacher是一个求出一个字符串中所有回文子串的利器。 记录方法 首先我们发现一个问题,一个长为 S 的字符串一共有 S2 个子串,所以记录回文子串时不可能记录左右端点。如何解决呢?根据回文串的特点,我们发现,一个回文串,将它的两端各删去一个字符,那么它还是一个回文串。所以我们 阅读全文
posted @ 2024-05-04 19:48 Cyan_wind 阅读(8) 评论(0) 推荐(0) 编辑
摘要: AtCoder 比赛历程 ABC 337-G 题目大意:给定一棵树,对于树上的每个点u,定义 f[u] 表示满足点 w 在点 u 到点 v 的路径中,且 w>v 的点对 (w,v) 的数量。 u 可以等于 w 。 解法:比赛时先 阅读全文
posted @ 2024-02-18 19:28 Cyan_wind 阅读(60) 评论(0) 推荐(0) 编辑
点击右上角即可分享
微信分享提示