笔记
文章平均质量分 91
Mongo_w
本人很菜
新个人主页https://training.517coding.com/%E7%94%A8%E6%88%B7:Laijunxu
我的luogu:https://www.luogu.com.cn/user/78127
展开
-
SAM 笔记
后缀自动机 SAM\text{SAM}SAM . 仅为学习笔记,思路会跟博客 后缀自动机(SAM)学习笔记 - zjp_shadow - 博客园 比较类似 . 定义 endpos(t)endpos(t)endpos(t) 为子串 ttt 在 sss 中出现过的所有结束位置的并 . 阅读下文时建议将 状态 看成是 endposendposendpos 的一个集合 . 有时也会用 parent树\text{parent树}parent树 来代替 后缀树\text{后缀树}后缀树 . Lemma 对于两个子串原创 2022-01-22 14:37:53 · 216 阅读 · 0 评论 -
计数好帮手 生成函数
计数好帮手 生成函数 OGF 记数列 {ai}\{a_i\}{ai} 的生成函数为 ∑k=0∞akxk\sum\limits_{k=0}^{\infty} a_kx^kk=0∑∞akxk . 常用的生成函数有 11−x=1+x+x2+…=∑k=0∞xk\frac{1}{1-x}=1+x+x^2+\ldots =\sum\limits_{k=0}^{\infty}x_k1−x1=1+x+x2+…=k=0∑∞xk . 11−xn=1+xn+x2n+…=∑k=0∞xkn\frac{1}{1-x^n}原创 2021-11-26 21:29:09 · 279 阅读 · 0 评论 -
21.8.28 dp
A B √ O(n2)O(n^2)O(n2). C √ O(n2)O(n^2)O(n2). D √ O(nlogn)O(n\log n)O(nlogn). E √ O(n2)O(n^2)O(n2). F √ O(nlogn)O(n\log n)O(nlogn). G √ O(n2)O(n^2)O(n2). H √ O(n3k)O(n^3k)O(n3k). I √ O(n)O(n)O(n). J √ O(n)O(n)O(n). K L ...原创 2021-08-28 14:40:56 · 175 阅读 · 0 评论 -
快速傅里叶变换
这里有一个问题: 我们有两个多项式,分别计作Ai(x),Bj(x)A_{i}(x),B_{j}(x)Ai(x),Bj(x),这里的下标表示对应多项式最高阶数,如Ai(x)A_{i}(x)Ai(x)的最高阶数为iii 即: Ai(x)=a0+a1x1+a2x2+……+aixiA_{i}(x)=a_{0}+a_{1}x^{1}+a_{2}x^{2}+……+a_{i}x^{i}Ai(x)=a0+a1x1+a2x2+……+aixi Bj(x)=b0+b1x1+b2x2+……+bjxjB_{j}(x)原创 2021-01-13 18:00:42 · 259 阅读 · 0 评论 -
四边形不等式证明
看网上四边形不等式的证明真的是一言难尽 你家不等式的证明难道是直接蹦出来的吗 过于气愤,于是写了这篇博客 前置芝士: 四边形不等式的定义: 对于定义域为III的二元函数w(i,j)w(i,j)w(i,j),若满足∀a<b<c<d∈I,w(a,c)+w(b,d)≤w(a,d)+w(b,c)\forall a<b<c<d\in I,w(a,c)+w(b,d)\leq w(a,d)+w(b,c)∀a<b<c<d∈I,w(a,c)+w(b,d)≤w(a,d)+原创 2021-01-02 21:50:03 · 399 阅读 · 0 评论 -
2020.10.18
noip模拟赛题解报告 由于为内部赛+版权题,所以不贴题面了 T1 【XR-4】歌唱比赛 按位处理字符串,如果Z前面有X或者Y则无解(手动模拟一下即可) code: #include<iostream> #include<cstdio> #include<cstring> using namespace std; const int N = 1000010; char s[N]; char a[N] , b[N]; int n , x; int main() { sca原创 2020-10-19 15:03:22 · 151 阅读 · 0 评论 -
分块九题
爆肝一天,终于写完了 分块入门 由于后半部分参考了dalao的博客,于是码风较前边有点区别 第一题 区间修改单点查询 讲真这题可以用CDQ分治写,而且通俗易懂,但这篇讲的是分块,所以我们只是贴一下代码: CDQ分治版: #include<iostream> #include<cstdio> using namespace std; typedef long long ll; const int N = 1000010; struct nod { ll x , y; i原创 2020-09-17 22:04:07 · 224 阅读 · 0 评论 -
平面最近点对
主要介绍分治做法 我们按照分治标准“分割-处理-上传”三步来做 首先将所有点按x值排序,分治函数solve(l , r)返回下标属于区间[l , r]的所有点的内部最近点对 显然当l == r 时不合法,因此我们上传一个+∞ 假设对于solve(l , r)已经递归处理完了solve(l , mid) 和 solve(mid + 1 , r) (mid = (l + r) >> 1),那接下来就要处理下面这种情况 对于点对(A , B),A在[l , mid],且B在[mid + 1 , r]原创 2020-09-08 09:59:45 · 238 阅读 · 0 评论 -
矩阵快速幂的模板
本博客仅提供代码,原理自行百度 一. #include<iostream> #include<cstdio> #include<cstring> using namespace std; typedef long long ll; const int N = 110 , mod = 1e9 + 7; struct Matrix { ll c[N][N]; } res , A; ll n , k; Matrix X(Matrix a , Matrix b) { Mat原创 2020-09-06 11:44:00 · 88 阅读 · 0 评论 -
离散化+各种神奇科技
主要讲讲我这个蒟蒻的离散化做法(只讲大数据化小数据) 首先拷贝一份数据进r数组 接着对r数组排序,手动去重塞进num数组里边 用的时候二分就好了 code: /* 给定一个长度为n的序列和m个询问xm,对于每个询问xi输出xi在序列内的排名 (如果xi没有出现过则输出-1) */ #include<iostream> #include<cstdio> #include<algorithm> using namespace std; const int N = 100010原创 2020-08-29 08:46:27 · 194 阅读 · 0 评论 -
换根dp中的容斥
主要是在写换根dp时写得脑阔疼 一.求树上一个点到其他节点的最大距离 转换一下就等价于求以哪一个节点为根时,这棵树的所有节点深度之和最大 首先以节点1为根跑一遍dfs1,目的是更新f[N]数组,N为总节点数 其中f[x]表示以1为根时,节点x的子树的所有节点深度之和 设dp[x]为以x为根的树的所有节点深度之和 由于我们一开始是以1为根,那显然dp[1] = f[1] 我们进行第二遍dfs2,目的是更新dp数组 假设当前节点为x,且dp[x]已经处理完了 对于x的一个孩子v,经过推导有: dp[v] =原创 2020-08-26 11:42:41 · 128 阅读 · 0 评论 -
这,就是并查集
前言: “十年苦琢白玉璧 一朝竞放紫兰花” 有的东西只要你肯用心学,总能学的很好。 我觉得上面这句话很适合我,毕竟就是凭着这不怕苦的精神,我才从一个连路径压缩都打不对的并查集小白成长成了普通并查集OIER(毕竟我也不是大佬 ) 并查集是什么? 并查集是一种用某个代表来代表整个集合,进而再进行对集合的操作的数据结构 比如我们用3来代表{1,2,3,4,5}这个集合,我们就表示成: p[1]=3 p[...原创 2019-12-30 16:19:16 · 137 阅读 · 0 评论 -
哈希学习笔记
先上一道例题:原创 2019-12-26 19:52:17 · 95 阅读 · 0 评论 -
前缀和与差分学习笔记
前言:本来在刷 AC Saber 里边的区间合并,结果就见到了422.校门口外的树(题目链接在下边)这道题 说来也巧,这道题之前我是拿暴力枚举的,结果发现一些很神奇的东西(其实就是瞎想 ) 为了方便读者,我把题目贴过来: 题目: 某校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是1米。 我们可以把马路看成一个数轴,马路的一端在数轴0的位置,另一端在L的位置;数轴上的每个整数点,即0...原创 2019-11-30 16:40:08 · 191 阅读 · 2 评论 -
单调栈学习笔记
单调栈的定义: 设st为一个单调栈,那么st里的每一个元素都满足优先序大的较小(或较大) 用c++语言写成就是: stack<int> st; /* 此处进栈操作 */ int a=st.top(),b; st.pop();b=st.top(); 满足:a<b 模板题:Acwing 830.单调栈 代码: #include<iostream> #include&l...原创 2019-11-29 19:54:55 · 106 阅读 · 0 评论