摘要: 声明:本文部分内容经过 AI 润色。 你这是哪个SAM 后缀自动机,简称 SAM,是一种我认为非常复杂的自动机,但是它也有很多优秀的特点,所以能够处理很多问题,很多后缀数组问题也都能用后缀自动机完成。 整体结构 SAM 的内部包含两套边,理解这两套边是掌握 SAM 的关键。 第一套边:带字符的转移边 阅读全文
posted @ 2026-04-24 15:10 huhangqi 阅读(68) 评论(3) 推荐(2)
摘要: 由于 NOIP 被打飞,压线拿下 1=,只好来体验一下省选 看看我能翻多少名(准考证ZJ-88,虽然很吉利但是应该也是倒数了) 3.4 冬妮娅忽然跑到机房说自己放假在家太无聊了,也想来打比赛,这样加上学长我们学校就有六个人去了。 冬妮娅说自己不会用 Linux,让猫教他。 结果三个高一的要么不知道要 阅读全文
posted @ 2026-03-10 20:17 huhangqi 阅读(11) 评论(0) 推荐(0)
摘要: 本来想按照日期写的,但是考炸了。 到考场,终于输入对了密码。 我天,怎么这个 Dev-c++ 是英文的。 这个补全括号在哪里调? 找了一会儿没找到这辈子也是有了。 先看 T1 直接秒。 完美开局,直接开 T2。 这不是水题吗,只有 \(m=2,2n-2,2n-1\) 的情况。 写。 怎么大样例过不了 阅读全文
posted @ 2025-12-06 15:39 huhangqi 阅读(27) 评论(0) 推荐(1)
摘要: 初赛 9.19 被CPP强行提早一天会学校,遂不爽。 被猫学长投喂了麻薯,拜谢猫学长%%%。 做了2020年真题,90.5pts,赢。 晚上整个寝室楼都只有OIer,为什么其它竞赛一个赛季那么短? 9.20 因为学校压根就没什么人,所以七点起来也是吃上了早饭。 早上本来是要写19年初赛的,但是早上刚 阅读全文
posted @ 2025-12-06 15:38 huhangqi 阅读(17) 评论(0) 推荐(0)
摘要: 定义 强联通分量:在有向图中任意两个节点连通的有向图(SCC) 点双连通分量:删除任意节点仍然连通(v-DCC) 边双连通分量:删除任意边仍然连通(e-DCC) 割点:删除这个点以后图的连通性会发生改变的点 桥:删除这条边后图的连通性会发生改变的边 Tarjan Tarjan 算法可以求出上面的所有 阅读全文
posted @ 2025-11-28 09:51 huhangqi 阅读(44) 评论(0) 推荐(0)
摘要: 我怎么现在感觉这玩意就是一个后缀自动机。 回文自动机,简称 PAM,是用来解决回文串问题的自动机。 整体结构 PAM 和 SAM 一样,都有两套边。 建立两个根节点,其中一个代表长度为奇数的起始位置,一个代表长度为偶数的起始位置。 其中一种是普通的带字符转移边,每走一步代表这个点的回文左右两边加上一 阅读全文
posted @ 2026-05-04 16:01 huhangqi 阅读(5) 评论(0) 推荐(0)
摘要: 后缀数组最为直接的作用就是给一个字符串的每一个后缀进行排序。 考虑如何快速处理这个问题。 题目:洛谷 P3809 【模板】后缀排序 做法 对所有后缀进行排序,那么可以直接排序,每次比较就直接二分哈希找到最前面的一位不同的点,直接比较即可。 但是,这种做法下每次比较两个后缀需要二分哈希,单次比较 \( 阅读全文
posted @ 2026-04-21 15:03 huhangqi 阅读(7) 评论(0) 推荐(0)
摘要: 二进制分组感觉是一种比较少见的数据结构维护方式。 它一般可以处理一些不容易进行修改,但是你可以通过快速重构,得到一个不可修改的结构的问题。 由于这是一个做法,所以先找一道题目。 洛谷 - P4027 题目可以转化为一个斜率优化 dp 的形式,属于李超线段树板子,由于此问题的每次加入的值其 \(x\) 阅读全文
posted @ 2026-04-21 11:59 huhangqi 阅读(13) 评论(0) 推荐(0)
摘要: 网络流可以抽象理解为一个地方是入水口,一个地方是出水口,需要得到每个管道的水量。 我们希望出水口出的水尽量多,得到的就是最大流了。 先不讨论最大流的性质,考虑一下最大流怎么求。 网络流算法 EK 算法 这个水流明显不太好模拟,考虑每次增广一条水流。 我们尝试加入一条水流的路线。 不断加入,一直到无法 阅读全文
posted @ 2026-04-13 16:37 huhangqi 阅读(29) 评论(0) 推荐(1)
摘要: 为了防止自己忘记板子怎么敲,我还是决定来写FFT、NTT学习笔记了。 由于这个东西的推导实在太过复杂,所以所有内容都只给个简略的结论。 快速傅里叶变换(FFT) 整体思想 FFT 是用来快速计算多项式乘法的方法,是通过对称性和分治方法来求出多项式乘法结果的方法。 FFT 需要使用虚数进行运算。 \( 阅读全文
posted @ 2026-04-09 16:35 huhangqi 阅读(21) 评论(0) 推荐(2)
摘要: 洛谷 题目要求计算覆盖面积。 考虑如何计算两个苦无是否会相撞,又会在什么时候相撞。 如果两个方向分别向上下方向那么需要满足 \(x\) 坐标相等。 两个相遇时消耗的时间为两个的 \(y\) 坐标差值的一半(简单的相遇问题)。 左右方向同理可得。 然后考虑如果一个向下,一个向左,那么怎么判断是否会相遇 阅读全文
posted @ 2026-03-31 14:50 huhangqi 阅读(8) 评论(0) 推荐(0)
摘要: 洛谷 如果想到了还是比较好写的题目。 对于这种平面图统计有多少连通块可以往平面图欧拉公式考虑。 我们把每个方块看成一个点,如果两个块都没有被走过,就视为有边。 分析平面图欧拉公式推论:\(|V|-|E|+|F|=k+1\)。 其中 \(|V|\) 表示平面图中点的数量,\(|E|\) 表示平面图中边 阅读全文
posted @ 2026-03-13 20:49 huhangqi 阅读(9) 评论(0) 推荐(0)
摘要: 使用 VSCode VSCode 好像还算符合我的编码习惯,设置都不需要怎么调整 首先在初始的页面找到 Open Folder 找到自己需要装代码的那个文件夹,可以进行宏观管理 然后所有产生的东西好像就都会放到这里面,默认也是在这里,如果想方便一点调大样例可以提前全部复制出来(别删了) 直接按左边侧 阅读全文
posted @ 2026-03-05 21:10 huhangqi 阅读(13) 评论(0) 推荐(0)