各种知识点整理
图论 圆方树 正在学 最短路树 主要解决一些要用到最短路性质或和最短路相关的题 Kruskal重构树 这个比较简单,但用到了一个把边化为点的思想,这有几条很显然的性质: 这是一珂满足大根堆性质的二叉树 任意一条路径的最大值为树的LCA 树链剖分(就套一套其它数据结构用用吧) 字符串 后缀数组 主要就体现了一下后缀的思想和处理的技巧 后缀树 一个利用虚树的性质,配合后缀数组巧妙地建树 后缀自动机 SAM = DAWG(直接建) + Parent树(因为各个节点不能相同,所以如果要分裂出去,必须要连边) 理解性质较重要(本蒟蒻认为较难理解) 字符串hash KMP KMR自动机qwq DP 数位dp(ZR mjy小姐姐课程强烈推荐!!) 好题: hdu4734 F(x) 可以发现虽然A非常大,但是F(A)极度地小,于是设 \(dp_{i,j,k} = 到了第i位,当前位数字为j,F值为k的方案数\) 先预处理出dp数组,然后每次询问的时候统计ans就行了 装压dp(感觉虽然会,但是用得不太熟) 好题: Atcoder ARC058 C Iroha and Haiku 这题设dp方程有点妙:设 \(dp_{i,S}\) 表示到了第i个数,状态为S的方案数 状态为S表示如果是{4},那么二进制倒数第4位为1,二进制为4;如果是{4,2}那么二进制位100010;如果为{4,2,3}