合集-学习笔记
摘要:Manacher是一个求出一个字符串中所有回文子串的利器。 记录方法 首先我们发现一个问题,一个长为 的字符串一共有 个子串,所以记录回文子串时不可能记录左右端点。如何解决呢?根据回文串的特点,我们发现,一个回文串,将它的两端各删去一个字符,那么它还是一个回文串。所以我们
阅读全文
摘要:李超线段树 学习笔记 问题引入: 在一个平面内,有 次操作,这些操作分为 种:第一种是在平面内加入一条线段;第二种是给定一个 ,查询直线 与这些线段交点的最大值。(强制在线, \(n\le10^5,1\le x\le 39989,-10^9\le
阅读全文
摘要:闵可夫斯基和 定义两个凸包 的闵可夫斯基和 。就是从原点向其中一个凸包连出的向量,平移到另一个凸包上的每一个点,最后构成的图形即为两个凸包的闵可夫斯基和。其中的第一个图形可以看做被缩到了原点, 中右下角(这里是
阅读全文
摘要:2-SAT 用于求解布尔方程组,其中每个方程最多含有两个变量,方程的形式为 ,即式子 为真或式子 为真。求解的方法是根据逻辑关系式建图,然后求强联通子图,每一个强联通子图的答案都是一样的。 建图: 这里以模版题为例: 题意:给定若干个需要满足的条件,其
阅读全文
摘要:(之前学的一些东西都没打笔记,给忘的差不多了。从这个开始要记得写笔记了。) 注意事项:所有的字符串的下标从1开始。 KMP 对于一个字符串 s ,定义它的前缀数组a,其中a[i]表示子串s[1...i]前缀与后缀相同的最大长度(不包括串自身)。 对于朴素的算法,自然是n^2的暴力。考虑利用前面位置的
阅读全文
摘要:用于求解方程组。 给定 个关于 个变量的方程组,需要你判断该方程组是否无解、有无数解、有唯一解,并输出唯一的解。 考虑使用消元法。我们枚举一个变量 ,从所有没有被操作过的方程式中选出一个,然后用它对其他没有被操作过的方程式进行消元,并将被选中的那个方程式视为被操作
阅读全文
摘要:我们知道,对于一个 次多项式,我们只需知道它在 个点上的取值,就能求出这个多项式。我们可以列方程求出每一个的系数,但是这样的时间复杂度是 的,所以我们使用一些别的方法来求出对于某个点的值。 拉格朗日插值: 设已知平面内的 个点,要求这 \(n\
阅读全文